Для Хаскеля нет простых веб-фреймворков.
Вообще нет, совсем, никаких.
Это связано с тем, что все (ВСЕ!) веб-фреймворки используют WAI. WAI, Web Application Interface, представляет из себя
библиотеку в 18 (примерно) каталогов, каждый из которых содержит по несколько исходных файлов
(
Read more... )
Reply
Reply
Reply
Reply
Reply
Reply
Что вы собираетесь предложить в качестве инструмента для программирования веб-серверов?
Reply
Reply
Писать логику приложения на языке, который предназначался для изменения картинки, когда над ней приезжает курсор - увольте. Он и медленный, и менять логику страшно, ибо типов нет. Да и писать страшно - типов нет.
Reply
Ну, JS как язык с 1996 года не очень-то изменился, да. Но весьма серьезно изменилась парадигма его использования. Теперь никто не пишет `for (i=1; i<=10; i++) ...`. Пишут или `for (i=10; i--;) ...` или `Array.apply('whatever', Array(size)).map(function(e, i){ ...`. Функциональщины теперь в JS полно. Промисы, опять же.
Безопасно менять логику позволяют тесты (отдельный разговор про то, что их надо грамотно писать).
Типы есть (TypeScript, интерпретируется в JS), но это оверкилл. Но все равно, тру-JS программеры прекрасно обходятся без типов.
Happstack Philosophy почитаю попозже.
Reply
В SQLite 1100+ строк тестов на одну строку исходного кода. Было на момент написания вот этого текста: http://lcamtuf.blogspot.ru/2015/04/finding-bugs-in-sqlite-easy-way.html
Не надо упоминать связь между тестами и логикой в блогах приличных людей. ;)
Reply
Reply
У меня всей команды только я. Я не могу позволить себе писать тесты, потому, что всей команды только я. Я не могу позволить себе даже думать о возможности получить строку вместо числа потому, что у меня одна голова и ошибки ищет только она одна.
Вот: http://thesz.livejournal.com/719123.html
Я не могу не применять свой опыт программирования (весьма широкий, надо отметить). Он мне говорит, что Хаскель я могу применить очень продуктивно, с малым количеством ошибок и хорошим результатом. А вот языки типа JS - увы, нет. 300 строк верхний предел.
Reply
Поправьте меня, если я ошибаюсь, но в исходной записи превалировало нытье про то, что на хаскеле хрен чего запрограммируешь вообще (в вебе), тут уж не до эффективности.
Ну и да тесты можно самому себе наперед писать, чтобы потом не уйти торной тропой в избыточный функционал.
Недавно в твиттере проскочило: Weeks of coding might save you hours of design.
Reply
У нас программа делится на две части - неизвестная и известная. Я считал, что веб-программирование мне известно и понятно (я, бляха муха, свой первый веб-сервер в 1996 году написал, на Си), однако первое впечатление показало, что вместо привычных мне концепций мне надо изучать сложный WAI. Это означает, что тонкой прослойки между неизвестной (пока) логикой программы и пользователем не получится. То есть, я получил сложность на ровном месте.
Упоминание happstack убрало эту сложность.
Далее, в программе в обязательном порядке есть кусок кода, который никто никогда до этого не писал - собственно, за это, обычно, и платят, и чем он больше, тем больше платят. Это та сложность, к которой я привык и что я ожидал. Поскольку его никто никогда не писал, вы с ним один на один. Чтобы не потерять даром время надо допустить в его реализации как можно меньше ошибок. Здесь типы самое то.
Reply
Ну это спорный тезис :)
> надо допустить в его реализации как можно меньше ошибок. Здесь типы самое то.
Ну а я скажу: «Здесь типы нафиг не вперлись, здесь тесты самое оно». И кто из нас прав, проверить невозможно. Можно только статистику по успешному мировому продакшену посчитать, в которой хаскеля, скорее всего, не будет вовсе.
Reply
Leave a comment