Pull to refresh

Comments 8

Не понял ссылку на кошелек Миллера. Чего в хорошем языке должно быть 7±2? Более уместной аналогией была бы бритва Оккама — не плодить лишних сущностей без надобности.
Быть может, строчек в методе? Речь скорее не о языке, а о коде, который на нем пишется. К тому же, как автор статьи про Кошелек Миллера дал знать, дело вовсе не в 7±2, а скорей N±ε, где эти значения сильно зависят от контекста.
Желание ввести подобного рода сахар скорей всего возникло именно для того, чтобы подчеркнуть функциональную натуру javascript'а, потому что подобного рода let-блоки встречаются повсеместно в разного рода функциональных языках. Марк прав в отношении данной фичи: Это не тот сахар, который бы значительно облегчил жизнь разработчикам, и не тот, который значительно улучшил бы читаемость кода, как и сказал переводчик, скорей всего, этому блоку будет лучше житься в отдельной функции.

Да и к тому же, будем честны: JS использует огромное количество людей и вряд ли хотя бы треть из них когда нибудь писала на языках типа Lisp или Haskell. Подобного рода сахар оценила бы лишь маленькая ниша разработчиков, который тащятся от разных функциональных плюшек, да и те, скорей всего, в свободное время пишут на ClojrueScript.
Стоит отметить, что Миллер-Автор-Кошелька и Миллер-Автор-Письма — это два разных человека. Даже не родственники.

И ещё. Рассматривать такую проблему лучше через призму KISS + YAGNI, чем через кошелёк Миллера. Кошелёк Миллера это про несколько другое.
Мне нравится Parser-3 в этом смысле. При том что язык богатый и весьма быстрый в разработке, оглавление его спецификации умещается на один экран открытого chm-файла.
При наличии анонимных arrow-функций, которые вполне могут инлайниться компилятором, синтаксис let-block имеет мало смысла, т.к. можно написать так:

(() => { /* тут что угодно */ })();
Но зачем, если вместо этого можно написать
{ /* тут что угодно */ }
Потому не не надо плодить сущности :)
Sign up to leave a comment.