Что вы теряете на практике, когда выбираете статически типизированный язык, например Scala (или F #, Haskell, С#) вместо динамически типизированных, таких как Ruby, Python, Clojure, Groovy (который есть макросы или возможности метапрограммирования времени выполнения)? Пожалуйста, рассмотрите лучшие статически типизированные языки и лучшие (на ваш взгляд) динамически типизированные языки, а не худшие.
Резюме ответов:
Ключевые преимущества динамических языков, таких как Ruby, над статически типизированным языком, например, Scala IMHO:
- Быстрый цикл редактирования (позволяет ли JavaRebel сократить пробел?)
- В настоящее время сообщество Scala/Lift намного меньше, чем Ruby/Rails или Python/Django
- Возможно изменение типов определений (хотя мотивация или необходимость в этом не очень понятна)