3 ms·
Thats because Javas has a clunky type system and bloated libraries full of design patterns. In languages with better support for higher order functions the bit
by ufo 13y ago
Thats because Javas has a clunky type system and bloated libraries full of design patterns. In languages with better support for higher order functions the bit about needing to pass a strange class is much more lightweight.
IMO, real advantages of dynamic typing vs static typing are
* Simplicity. You don't need to learn a complex type system to start coding.
* Flexibility. Dynamic type systems don't stop you from doing useful things ike polymorphism and generics. In a static type system those need to be build in from day 1.
- danbruc 13y agoCompletely disagree. Lazy developers not willing to learn a language can not count as argument against statically typed languages. This is a bit like suggesting you should better walk across the country because than you do not need to fuel your car or buy some kind of ticket. And having to build more advanced type system features on top of a simpler type system is hardly a good thing either - type theory is not trivial and chances that you will get it wrong are large. Even experts in the field make wrong decisions, for example array covariance in Java an C#. And even if you get it right you will usually not enjoy (all) the benefits of compile time type checking and fail only at runtime.
- k__ 13y agoWhen I had lectures about type-theory in university, it made me even more confident in not using statically typed languages. Those whole contra/covariant problems I read about seemed crazy to me :\ It felt like even the implementers of those type-systems didn't get it right.