coffeescript
Feb. 26th, 2013 09:31 pmПопробовал писать на Coffeescript, и приятно удивлен. Удобный и интуитивный язык, писать на нем намного приятнее, чем на голом JS, и притом он специально от него далеко не отходит, т.е. результаты трансляции всегда прозрачны.
Ну вот просто красиво выходит, приятно. Javascript он какой-то весь угловатый, острый, дикий, яркий свет из лампы следователя в лицо, а Coffeescript - мягкие тона, непринужденная беседа, свежий воздух после дождя. Странно, что вся эта эстетика настолько влияет на желание что-то написать и эффективность работы, но вот ведь, влияет.
(я добавил в онлайн-версию Jelly No Puzzle Эвана Мартина возможность блокам толкать другие блоки, и это починило третий уровень. В принципе я собираюсь добавить недостающие возможности и оставшиеся уровни, если Эван меня не опередит в этом)
Ну вот просто красиво выходит, приятно. Javascript он какой-то весь угловатый, острый, дикий, яркий свет из лампы следователя в лицо, а Coffeescript - мягкие тона, непринужденная беседа, свежий воздух после дождя. Странно, что вся эта эстетика настолько влияет на желание что-то написать и эффективность работы, но вот ведь, влияет.
(я добавил в онлайн-версию Jelly No Puzzle Эвана Мартина возможность блокам толкать другие блоки, и это починило третий уровень. В принципе я собираюсь добавить недостающие возможности и оставшиеся уровни, если Эван меня не опередит в этом)
no subject
Date: 2013-02-26 08:12 pm (UTC)А datatype'ы с pattern matching'ом там есть?
no subject
Date: 2013-02-26 08:17 pm (UTC)Datatype'ов с pattern matching'ом нет, и не надо :) Это нарушило бы их принцип не отходить далеко от JS.
no subject
Date: 2013-02-26 08:46 pm (UTC)no subject
Date: 2013-02-26 09:48 pm (UTC)то есть вы считаете, что нормальный программист, пишущий на JS, постоянно плюется и говорит "ну где, где моя любая vanilla Java, как мне без нее трудно, без родной" ?
no subject
Date: 2013-02-27 06:16 am (UTC)Только причем здесь ванильная ява? Это что ли образец совершенного языка?
no subject
Date: 2013-02-27 11:04 am (UTC)вопрос в том, что понимать под мелочевкой
вот эта игра, которая обсуждается в этом топике - это мелочевка или нет?
начиная с какого количества строк кода начинается не-мелочевка?
и вообще, мне кажется вы недооцениваете как часто в вебе нужно написать некий небольшой модуль кода, где JS идеально подходит
ваша позиция тут схожа с позицией человека, который стал бы говорить, что он удивляеются как люди относятся к легковым автомобилям как к настоящим, в то время как настоящие машины, по его мнению, это грузовики, а легковушки - это мелочевка, непонятно зачем нужная.
no subject
Date: 2013-02-27 11:23 am (UTC)Я вовсе не утверждал, что мелкие изделия нужны редко, и даже склонен поверить в обратное, хотя веб-программированием никогда не занимался. Другой вопрос, как обычно выглядит архитектура монструозных веб-проектов, и какова их доля среди всего того, что отображает браузер усредненного пользователя. Мне не верится, что в больших проектах доля JS-кода значительна.
Кстати, комментарий в конце кода JS-версии игры отчасти подтверждает мой тезис, о том, что не стоит писать на JS руками.
no subject
Date: 2013-02-27 12:24 pm (UTC)no subject
Date: 2013-02-27 06:26 am (UTC)no subject
Date: 2013-02-27 11:07 am (UTC)no subject
Date: 2013-02-27 11:37 am (UTC)Как встроенный в броузер - выбор не большой. Все то, что компилируется в js. Понятно, что если без компиляции можно обойтись, то многие и будут обходиться, так как скопировать свежеотредактированный файл проще, чем его сначала чем-то компилировать. Но не смотря на это компиляторы появляютс в большом количестве. Я побозреваю, что любой из них будет лучше родного джаваскрипта, но пока сам не смотрел. Джаваскрипт у меня надолго отбил желание клиентской стороной заниматься.
no subject
Date: 2013-02-27 08:54 am (UTC)Это расширение коффескрипта всего двумя ключевыми словами: await и defer.
Позволяет очень прозрачно писать всякие асинхронные вещи.