Size: a a a

2018 November 07

(

( in pro.elixir
Ветвление != Прерывание
источник

Е

Евгений in pro.elixir
какая разница как его назвать, по факту - это прерывание
источник

Е

Евгений in pro.elixir
например, мне нужно выполнить HTTP-запрос, проверить статус, распарсить JSON, проверить наличие в нем нужных полей, обработать поля и вернуть результат.
источник

Е

Евгений in pro.elixir
на любом из этапов может возникнуть ошибка, мне надо прервать выполнение и вернуть ошибку
источник

Е

Евгений in pro.elixir
хоть ветвлением, хоть исключением
источник

Е

Евгений in pro.elixir
"лет ит краш" не предлагать, потому что все эти ошибки не являются критическими, они вполне себе штатные
источник

(

( in pro.elixir
Я только сейчас понял, что я "типичному джависту/шарписту" пытаюсь объяснить монады
источник

Е

Евгений in pro.elixir
не, я не джавист и не шарпист, я плюсовик :)))
источник

Е

Евгений in pro.elixir
что в общем-то почти одно и тоже :)
источник

Е

Евгений in pro.elixir
но не стоит быть таким высокомерным :)
источник

(

( in pro.elixir
С туплами и паттерн-матчингом у вас в любой момент есть некоторый поток данных через функции, который легко отслеживать, потому что
источник

(

( in pro.elixir
Ну, как сказать
источник

Е

Евгений in pro.elixir
тем более я знаю что такое монады
источник

(

( in pro.elixir
Потому что язык такой, тут ПМ на каждом шагу
источник

(

( in pro.elixir
И на каждой конкретной операции вы скорее всего точно знаете, что у вас за ошибка в тупле
источник

Е

Евгений in pro.elixir
язык все равно не является чистым функциональным
источник

(

( in pro.elixir
Котлин тоже не является чистым функциональным, но тем не менее там есть Arrow и функции все стараются отчищать
источник

(

( in pro.elixir
Потому что недостаток чистоты языка не является причиной не писать как можно более чистый код
источник

Е

Евгений in pro.elixir
(
И на каждой конкретной операции вы скорее всего точно знаете, что у вас за ошибка в тупле
Да, но я как человек кодивший и на ФП и ИП и ДП и СП, сравниваю и делаю выводы
источник

Е

Евгений in pro.elixir
Не мешало мне это прерывание выполнения от слова совсем.
источник