Size: a a a

2021 March 18

L

Lierdakil in Haskell
Jerzy Syrowiecki
зачем генерить, если можно сразу на аппликативах и монадах писать?
ну есть, да. гибкий, да. нет, не серебряная пуля.
источник

I

Ivan in Haskell
Lierdakil
Я таки даже не знаю что считать за годный гайд. У happy и у alex хорошая документация. Если Вы в BNF умеете и понимаете что такое data в хаскеле то задача довольно тривиальная.
благодарю, умею в EBNF (думаю не столь важно)
источник

I

Ivan in Haskell
еще раз спасибо, пойду разбираться!
источник

JS

Jerzy Syrowiecki in Haskell
Lierdakil
1) левая рекурсия 2) проверка однозначности 3) гарантированное отсутствие квадратичного бэктрекинга
ну, мне приятнее писать на одном Хаскеле, чем на этих франкенштейнах.

а эти проблемы решаются кратковременным включением мозга.

хм, что-то я звучу как любитель динтипизации...

кстати, почему эти свойства нельзя обеспечить внутренним DSL?
источник

L

Lierdakil in Haskell
Jerzy Syrowiecki
ну, мне приятнее писать на одном Хаскеле, чем на этих франкенштейнах.

а эти проблемы решаются кратковременным включением мозга.

хм, что-то я звучу как любитель динтипизации...

кстати, почему эти свойства нельзя обеспечить внутренним DSL?
Я думал об этом, не поверите. Пришёл к выводу что можно, но только для Applicative. А с монадами получается подозрительно похоже на проблему останова. Но похоже никто ещё не сделал.
источник

JS

Jerzy Syrowiecki in Haskell
Lierdakil
Я думал об этом, не поверите. Пришёл к выводу что можно, но только для Applicative. А с монадами получается подозрительно похоже на проблему останова. Но похоже никто ещё не сделал.
а на стрелках?
источник

EZ

Egor Zorin in Haskell
Jerzy Syrowiecki
ну, мне приятнее писать на одном Хаскеле, чем на этих франкенштейнах.

а эти проблемы решаются кратковременным включением мозга.

хм, что-то я звучу как любитель динтипизации...

кстати, почему эти свойства нельзя обеспечить внутренним DSL?
>Приятнее писать на Хаскеле
>Звучу как любитель димтипизации
Понимаю..
источник

JS

Jerzy Syrowiecki in Haskell
Egor Zorin
>Приятнее писать на Хаскеле
>Звучу как любитель димтипизации
Понимаю..
нет, это относилось к ближайшей фразе. динтипизаторы объясняют недостатки языков возможностью программиста думать. то есть фактически обязанностью думать
источник

L

Lierdakil in Haskell
Jerzy Syrowiecki
а на стрелках?
Я плоховато понимаю стрелки чтобы что-то про них говорить.
источник

EZ

Egor Zorin in Haskell
Jerzy Syrowiecki
нет, это относилось к ближайшей фразе. динтипизаторы объясняют недостатки языков возможностью программиста думать. то есть фактически обязанностью думать
Разве? Обычно я думал это просто другой способ со своими плюсами и минусами
источник

L

Lierdakil in Haskell
Egor Zorin
Разве? Обычно я думал это просто другой способ со своими плюсами и минусами
Да, минус в том что оно грохается в рантайме вместо того чтобы выдать ошибку компиляции) На это обычно ответ "ну надо думать и тесты"
источник

JS

Jerzy Syrowiecki in Haskell
Egor Zorin
Разве? Обычно я думал это просто другой способ со своими плюсами и минусами
вот это и есть минус для меня
источник

EZ

Egor Zorin in Haskell
Lierdakil
Да, минус в том что оно грохается в рантайме вместо того чтобы выдать ошибку компиляции) На это обычно ответ "ну надо думать и тесты"
Ну тут другого способа и нет. Это ведь от части правда, а не оправдание.
источник

S

Sergey in Haskell
Lierdakil
Да, минус в том что оно грохается в рантайме вместо того чтобы выдать ошибку компиляции) На это обычно ответ "ну надо думать и тесты"
Просто пишите программы без ошибок, и не придётся городить всякие типы и проверки при компиляции )
источник

EZ

Egor Zorin in Haskell
Sergey
Просто пишите программы без ошибок, и не придётся городить всякие типы и проверки при компиляции )
Мат описание, определение данных и описание алгоритма.. Думаю тут побеждает лень
источник

L

Lierdakil in Haskell
Sergey
Просто пишите программы без ошибок, и не придётся городить всякие типы и проверки при компиляции )
Хоть бы одним глазком взглянуть на что-то сложнее хелловорлда без ошибок)
источник

JS

Jerzy Syrowiecki in Haskell
Egor Zorin
Ну тут другого способа и нет. Это ведь от части правда, а не оправдание.
ну как же? можно добавить в язык проверку типов, можно не добавить. как минимум 2 способа
источник

L

Lierdakil in Haskell
На самом деле что говорит против этого оправдания что в традиционно динамические языки потихоньку завозят статическую проверку типов.
источник

L

Lierdakil in Haskell
Что она часто работает причудливо так это дело десятое
источник

EZ

Egor Zorin in Haskell
А как же метапрограммирование или как там..
источник