Size: a a a

Elm Lang сообщество разработчиков

2017 June 04

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
И вот тут (когда начинаютмя проблемы с парадигмой) Elm'оводы терпят и костыляют, но это никак нельзя назвать правильным путём
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
Мне не до конца понятны критерии правильности и кто их принял, но ладно, пусть будет так)
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Гибкость, это возможности. Которыми можно не пользоваться. Узость, это готовый путь, с которого нельзя свернуть, даже если нужно
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
Но ведь можно. Обратившись к более низкому уровню - в случае эльма к javascript.
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
Типа как ассемблерные вставки в си.
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Дело даже не в "правильности". Та самая идея, вокруг которой эльмоводы пляшут - "сделать неправильное состояние невыразимым" - разбивается о тот факт, что система типров в Elm - недостаточно выразительная
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Интероп с JS в Elm - это отдельный вид боли, если что :)
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
А в purs с интеропом всё нормально
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
Сейчас как раз активно юзаю этот самый интероп. Не привычно, согласен, но логика за ним есть.
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
Про purs можно сказать "скомпилировалось - значит в 99% случаев работает"?
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Если не считать того, что он медленный и излишне вербозный, так интероп через порты нормально работает только если не приходится что-то "дорисовывать". Интероп с либами, кторые ходят в DOM, это минное поле
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
В итоге эльмоводам жмёт и они уже начали ходить за пакетами в github, минуя репозиторий пакетов - и контроль semver заодно
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Это плохая тенденция
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Elm лучше всего себя чувствует в pure-elm-проектах. И рост кол-ва либ появлению таких проектов способствует. Но ограниченность языка заставляет использовать "нативный код", который нарушает безопасность и не поддерживается тулингом (отсюда и нужда в альтернативных инструментах работы с зависимостями)
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
Тут не могу не согласиться, особенно про дорисовывание DOM либами. Есть воркараунды конечно, но кайф ломается сильно. В остальное время как раз за счет ограничений и предпочтительной архитектуры разрабатывать понятно и приятно.
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
В этом плане я согласен на "неполноценный язык")
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Elm сейчас выглядит, как ранний PHP - хорошо подходит для решения своей задачи, пока задача простая и укладывается в известные рамки. Увы, упираешься в рамки достаточно часто
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
При этом Elm даже к Standard ML не приблизился - вот это печально. В том тоже нет тайпклассов, но многие проблемы решаются за счёт тамошней системы модулей (это не те модули, что есть в Elm).
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
Aleksei (astynax) Pirogov
Elm сейчас выглядит, как ранний PHP - хорошо подходит для решения своей задачи, пока задача простая и укладывается в известные рамки. Увы, упираешься в рамки достаточно часто
А опыта использования много? Я просто про большую часть проблем знаю скорее в теории, а на практике в мелких пэт-проджектах не часто сталкиваюсь. Сейчас вот только активно работаю с браузерным апи, для которого стандартной либы нет, и приходится с портами возиться. Не очень удобно, но работает.
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
> А опыта использования много?

У меня? Достаточно :)
источник