Здравствуйте, Somescout, Вы писали:
S>Здравствуйте, gandjustas, Вы писали:
G>>Представь что у тебя в любом языке есть аналогичный dom с таким же API и оператор eval. Попробуй аналогичный excel записать на другом языке в те же 30 строк. G>>Внезапно окажется, что в других языках нет аналогов with и defineProperty и придется городить костыли в 10 раз длиннее для того же функционала. S>Внезапно, и то, и другое нужно там чисто для работы сырого eval'а. Говнокод как он есть.
И пусть говнокод. Работает отлично, на любом другом языке заняло бы минимум в два раза больше. А на java\c#\c++ в — 10 раз больше.
S>>>До того что там используется сырой eval без какой либо фильтрации данных? Да, это такая мелочь... зато 30 строк. G>>Ты не понял, что этот пример исключительно для демонстрации мощи JS и к реальному приложению не относится? S>Я это как раз понял, это ведь именно вы настаиваете что "эти 30 строчек демонстрируют МОЩЬ JS". А по мне это не больше чем пресловутый однострочник на perl'е — бесполезная, опасная, кривонаписанная хрень. "Зато прикольная", по мнению фанатов.
Вопрос не в конкретном коде, а в возможностях JS. Они превосходят возможности многих современных языков.
S>BTW. Могу напомнить какой красивый код можно было писать на PHP при включённой авторегистрации глобалов. Что-то в итоге все плевались потом с такой красоты.
Есть подозрение что аналог на пыхе займет больше 30 строк.
S>>>JS кривой уже сейчас, и разве в js собираются добавлять возможность аннотации типов? (а это как раз то, что мне нравится в TS). G>>Ты походу не понимаешь. В JS не будет аннотаций типов. S>О чём и речь. Вы можете сколько угодно защищать гениальность такого решения, но с моей колокольни это изначальный дефект языка.
Вот именно. Это лишь твое мнение, которое никому не интересно. А факты остаются фактами — JS очень мощен и не очень сложен при этом. Поэтому он побеждает.
Кому надо — пользуются аннотациями, ts и всей экосистемой.