Я тут посмотрел докладик некого Steve Yegge "Dynamic languages strike back"
http://steve-yegge.blogspot.com/2008/05/...
Во время просмотра я засыпал не меньше трёх раз, гм, но ясно уловил его главную мысль: он утверждает, что статическая типизация тормозит развитие ЯП, и нужно идти по пути динамики. Поскольку, мол, сложность софтварных систем растёт, и если вовремя не абстрагироваться уровнем выше, то об алгоритмических оптимизациях можно забыть. А микрооптимизации применяются в автоматическом режиме компилятором/JIT. При этом JIT в рантайме имеет больше информации о коде и может микрооптимизировать круче.
Ещё он отвечал на основные аргументы против динамики: 1) скорость, 2) плохая инструментальная поддержка, в том числе IDE и статическими анализаторами, 3) maintainability. Хотя насчёт 3) он не ответил, а просто отморозился, что мол, сейчас нет примеров больших кодобаз на динамических языках, так что говорить что-то о maintainability рано; всё, что говорят о maintainability сейчас — FUD.
Насчёт скорости всё те же возражения про JIT, про generational GC, который не делает пауз, про какую-то хуйню^W Java etc. Достал и показал The Dragon Book; объяснил, что все техники компиляторства в этой книге для динамики просто не работают — и нужно ресёрчить моар.
Насчёт статического анализа и IDE начал с какой-то хуйни про то, что NLP системы, построенные на детерминистических моделях, зафейлились, и сейчас рулят модели, которые работают probabilistically (??). Которые в 95% случаев работают ОК, но изредка всё же фейлят. И что мол всякие Java IDE тоже фейлят в редких случаях с рефлексией, персистированием имён полей и методов этц. Но в среднем работают хорошо. И что Intellij IDEA умеет автодополнение, переход к месту определения и всякий рефакторинг для динамически типизированного JavaScript. И что это IDE точно так же изредка фейлит, но в среднем работает очень даже отлично.
Ещё много всякой нерелевантной ерунды порол, я половину не запомнил. В общем, не советую, доклад уныленький. Одно нытьё и неосиляторство.
ulidtko
07.02.2012 00:38 уважением
Do you really want to delete ?
Хуита.
вот именно же!
Хуита и поебень. Человек не смог в хаскель.
смог-смог. И в скалу смог.
Нет не смог, я настаиваю.
дак я не против, «хуита и поебень» ведь на пстаче абсолютно валидное возражение.
@ulidtkokokoko.
а это аргумент!
@kokokokomar
Ты так расписал, что пока я не прочитал последний абзац, мне хотелось посмотреть.
Всё правильно сказал. Tracing jit заруливает, а грамотное тестирование спасёт maintainability.
так посмотри.