metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2011-10-28 06:34 pm

Интересное мнение про Haskell

http://neugierig.org/software/blog/2011/10/why-not-haskell.html
http://www.reddit.com/r/programming/comments/lfm1k/why_not_haskell/

У меня на данный момент с хаскелем забавный мозговой тупик: не совсем понимаю, как писать идиоматический код.

Т.е. например, разговор с девайсом по RS232 я могу написать в лоб, со сплошным IO, могу оформить с кошерными iteratees (хотя от типов и там и в coroutines глаза кровоточат), по идее, если покопаться, можно придумать еще несколько способов "красиво, строго, надежно" оформить разговор по известному протоколу, но в итоге то, что подразумевает повторное использование и статические гарантии, выглядит как ад из типов, а то что понятно - выглядит точно так же, как эта самая программа написанная на другом языке, с точностью до синтаксиса )

Вообще, от софта хочется простого: кроссплатформенность(винда/линукс), никаких JRE/Mono/CLI/интерпретаторов питонов/рубей, минимум зависимостей, отсутствие ручной работы с выделением-удалением памяти, нормальные строки, более-менее строгие типы.

[identity profile] max630.livejournal.com 2011-10-28 08:27 pm (UTC)(link)
при чтении сего мне вспомнился на днях читаный текст Бармина про SCO :)

[identity profile] nicka-startcev.livejournal.com 2011-10-28 08:31 pm (UTC)(link)
еще есть жабаМЕ.
и вроде бы нет "опциональных" либов, которые бы в кастрированной версии жабы брались локально, а в жирной эмулировались внешними приблудами.

[identity profile] nicka-startcev.livejournal.com 2011-10-28 08:31 pm (UTC)(link)
локально - в смысле, из того же "пакета" что и запускаемая нами э.. программа.

[identity profile] sheep2k.livejournal.com 2011-10-28 08:33 pm (UTC)(link)
Я фактически серьёзно :)

[identity profile] nicka-startcev.livejournal.com 2011-10-28 08:33 pm (UTC)(link)
так язык-то шизоидный. Хотели иметь сразу все концепции - получите голоса в голове и раздвоение личности, причем, наполовину совместимое с си.

[identity profile] theiced.livejournal.com 2011-10-28 08:37 pm (UTC)(link)
ну кушайте говно дальше, кто вам запредит.

[identity profile] sgalitsky.livejournal.com 2011-10-28 09:03 pm (UTC)(link)
Нутром чую, что это расово верный подход.(С)см.выше

[identity profile] clayrat.livejournal.com 2011-10-28 09:24 pm (UTC)(link)
>кроссплатформенность(винда/линукс)
>никаких JRE/Mono/CLI/интерпретаторов питонов/рубей

попахивает взаимоисключающими параграфами
а как нащот LLVM?

также порицаю стремление к сборщику мусора
даешь линейные типы (точнее линейный вид)

[identity profile] esil0x.livejournal.com 2011-10-28 10:18 pm (UTC)(link)
> Ну-ну, удачи. Сборщик мусора без виртуальной машины?
Да легко! Тот же D например.
Ну ещё в качестве примера можно Excelsion JET привести. Java компилируется в нативный код. Сборщик мусора присутствует. Виртуальная машина висит сбоку, но работает только когда динамически подгружаются классы.

[identity profile] esil0x.livejournal.com 2011-10-28 10:21 pm (UTC)(link)
С++

[identity profile] theiced.livejournal.com 2011-10-28 10:48 pm (UTC)(link)
это для марсиан. им ок, у них моск анатомически в жопе. а людям сложно и больно.

[identity profile] avnik.livejournal.com 2011-10-28 11:17 pm (UTC)(link)
А как хацкель-для-уеба будет под нагрузкой жить? Ну хотя бы под минимальной?

Если уж хочется чего-то правильного -- тогда ерлангъ

PS Кстати может и правда, давайте ребе метаклассу еролангъ присоветуем

[identity profile] sgalitsky.livejournal.com 2011-10-29 01:19 am (UTC)(link)
тссс. оне к&р читают. я чувствую. ни дня без строчки..
и чем ближе они к концу, тем другие ближе к завершению.
суровая правда жызни.

[identity profile] slonopotamus.livejournal.com 2011-10-29 06:11 am (UTC)(link)
Как насчет ooc?

[identity profile] metaclass.livejournal.com 2011-10-29 07:37 am (UTC)(link)
Хаскель для веба нормально, говорят.

[identity profile] theiced.livejournal.com 2011-10-29 07:40 am (UTC)(link)
ноль.

[identity profile] theiced.livejournal.com 2011-10-29 07:42 am (UTC)(link)
внезапно - го.

[identity profile] kurilka.livejournal.com 2011-10-29 08:00 am (UTC)(link)
http://www.yesodweb.com/blog/2011/02/warp-speed-ahead например есть такие левые цифры или лучше http://www.yesodweb.com/blog/2011/03/preliminary-warp-cross-language-benchmarks
Есть подозрение (хотя лучше бы сделать бенчмарки), что Эрланговые решения окажутся на этих графиках не впереди планеты всей, тем более если отдаваться будет что-нибудь сложнее hello world.
BTW сейчас пытаюсь изобразить для нового проекта решение на Warp/Yesod, правда оно не совсем "традиционный" веб (на что в основном Yesod рассчитан), а REST/XML бэкэнд.

[identity profile] avnik.livejournal.com 2011-10-29 08:06 am (UTC)(link)
Ну насколько я знаю, ерланг хорош в случаях, когда нельзя терять коннекты.
Оно будет их хоть и медленно, жевать тысячами

[identity profile] kurilka.livejournal.com 2011-10-29 08:11 am (UTC)(link)
В Хаскеле тоже лёгкая многозадачность, thesz даже хвастался, что стек на поток меньше чем в эрланге.
Другое дело, что в Эрланге инфраструктура для обеспечения этой многозадачности шире и проработанней (ибо осн. задача).
А так и ежу понятно, что инструмент надо подбирать под задачу.

[identity profile] avnik.livejournal.com 2011-10-29 08:13 am (UTC)(link)
Тут дело даже не в процессах, а в памяти -- хацкель ее любит, и насколько я знаю в слабопрогнозируемых объемах.

[identity profile] avnik.livejournal.com 2011-10-29 08:18 am (UTC)(link)
го ненужен

[identity profile] kurilka.livejournal.com 2011-10-29 08:27 am (UTC)(link)
Ну это слишком абстрактное заявление, чтоб его достаточно конструктивно рассматривать, но семантика строгого Эрланга заметно проще, да.

[identity profile] black-angel-by.livejournal.com 2011-10-29 08:33 am (UTC)(link)
перл красив лаконичностью :)

[identity profile] theiced.livejournal.com 2011-10-29 08:45 am (UTC)(link)
дада. только тот же руби лаконичнее. хаскель лаконичнее. лисп лаконичнее. а так перл хорош лаконичностью, не поспоришь.

Page 3 of 7