Nikita Volkov
@mojojojo11 years ago
Bennett Hoffman
@revcbh11 years ago
It certainly depends on the language you're using, and I could consider Java generics a poor example of the benefits of strong typing for the reasons you mention.
On the other side of the equation, when I write Haskell, I end up needing far less unit testing. A large portion of the unit testing I do in a language like ruby, python, or javascript involves checking that functions are actually getting the right sorts of things or failing if they don't.
Haskell's type system allows you to write programs of which you can be very certain that if they compile they already do what they should. Same can be said about Scala, if used right. This proves the statements made here to be biased by author's experience in typed languages, which seems to be limited to just Java. That is besides the fact that those statements are simply wrong. They could be true about Python vs Java, but not at all about dynamic vs static type systems.