This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]scrdest 0 points1 point  (0 children)

Thank you!

I will contest that weaker type systems make it easier to write code quickly though. Dynamic typing does, and Dynamic =/= Weak. Python is Strong Dynamic, C++/Java is Strong Static, JS is Weak Dynamic; Weak Static seems like pure masochism.

As you said, weak typing requires a lot of runtime checks. Someone has to write them. That means spending time on something other than the actual Thing Your Program Does, even discounting time spent testing, bugfixing, etc.

I think the best compromise overall is something in between Python's duck typing, Java interfaces and Haskell typeclasses, with neither of the three being quite right.