Size: a a a

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

2020 June 26

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Mikhail Bortnyk
Автокаррирование с другой стороны удобнейшая вещь, мне ее очень не хватает в некоторых языках
Это да
источник

TT

Taras 🦀 Taraskin in Elm Lang сообщество разработчиков
Źmićer Rubinštejn
Как сделать такую книжку? Это какой-то фреймворк на эльме? Выглядит охренетительно по сравнению со всякими gitbook там
мне выглядит как кастомная верстка, натянута на какой-то mkdocs, или другой генератор статического сайта с markdown шаблонов
источник

TT

Taras 🦀 Taraskin in Elm Lang сообщество разработчиков
да, ниже отписали — jekyll + кастомная верстка :) сорь если некропостинг
источник

AY

Alexey Yurchenko in Elm Lang сообщество разработчиков
Denis Krivosheev
Мне кажется отсутствие возможностей - это и есть причина оптимизаций... я помню на одной из лекций бранилевский рассказывал про то, какие фичи языков усложняют жизнь компилятору, и похоже тайпклассы одна из основных
как написать компилятор для
int a = 1
a += 1
в asm я понимаю.

как написать тоже самое для функциональных языков нет 😁 понятно, что можно найти
но это некоторый индикатор сложности
источник

TT

Taras 🦀 Taraskin in Elm Lang сообщество разработчиков
Źmićer Rubinštejn
Какой делаем вывод? Я пытаюсь найти решение, которое позволит мне как человеку умеющему markdown получать из него нормальные книги-сайты-респонсив-красиво-невырвиглазно-втипографику-нужное-подчеркнуть
для себя я бы попробовал соединить mkdocs + mpdf
это если надо и html на сайт, и pdf книгу
последний умеет html -> pdf, с кастомными тегами, настройками etc

итого получается md -> html -> pdf
но да, придется и над версткой шаблона странички посидеть (сверстать с purecss) (настройкой mkdocs), и над настройками mpdf тоже
источник
2020 June 27

_:

_Ryner' :: IO ❄️ in Elm Lang сообщество разработчиков
Ну-с, теперь подписки перестали быть массивом и это больше похоже на Elm, самое заметное различие, это конечно же, наличие монад, как видно в withCmd
источник

_:

_Ryner' :: IO ❄️ in Elm Lang сообщество разработчиков
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
_Ryner' :: IO ❄️
Ну-с, теперь подписки перестали быть массивом и это больше похоже на Elm, самое заметное различие, это конечно же, наличие монад, как видно в withCmd
Мне не нравится идея что в апдейте разрешено напрямую делать сайд эффекты. Я бы разрешил выбрасывать команды декларативно и отдельно бы имел команд хэндлер, который бы уже реагировал на ту или иную команду
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Апдейт из-за этого почти нереально тестировать
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
И он перестаёт быть декларативным
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Разве не в этом соль функционального программирования, мухи отдельно, котлеты отдельно, отдельно вычисления и отдельно экшены
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Единственное в элм нельзя самому написать команд хэндлер, только порт... а тут можно было бы, но где-то в отдельном месте, маленький и протестированный насколько это возможно
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
И тогда можно было бы тестировать апдейт на тему, что он выдаёт вот такую новую модель и вот такую вот команду формирует (но ничего сам не делает)
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Есть в кложу мире такой Фреймворк, рефрейм, там они сделали так что обновление модели это тоже всего лишь эффект, один из многих которые существуют, просто очень популярный ...
источник

_:

_Ryner' :: IO ❄️ in Elm Lang сообщество разработчиков
Denis Krivosheev
Мне не нравится идея что в апдейте разрешено напрямую делать сайд эффекты. Я бы разрешил выбрасывать команды декларативно и отдельно бы имел команд хэндлер, который бы уже реагировал на ту или иную команду
Так в Elm же точно так же можно команды выстреливать
источник

_:

_Ryner' :: IO ❄️ in Elm Lang сообщество разработчиков
Обычно то что я написал делать не надо, просто для примера
источник

_:

_Ryner' :: IO ❄️ in Elm Lang сообщество разработчиков
Например этот код тоже Cmd
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
Да, но ты не выполняешь команды, ты просто их создаёшь. Можно сказать делаешь план того что надо будет сделать
источник

DK

Denis Krivosheev in Elm Lang сообщество разработчиков
А потом уже какая-то внешняя фигня выполняет этот план
источник

_:

_Ryner' :: IO ❄️ in Elm Lang сообщество разработчиков
Ну, тут точно так же
источник