Hello, Yuriy!
Friday August 04 2023 21:52, from Yuriy Khashev -> Nil A:
NA>> Может ты ещё книжку по Haskell всю прочитал и на нём
NA>> хеллоу-ворлды писал? :-)
YK> На хаскель писал.
Прям продакшен код, или таки пет-проджект на два вечера дома?
YK> Точнее переписывал немного готовый код.
Крутотень. Я знаю только, что в ФБ у них спамфильтр на Хаскеле. Зачем на нём -
ХЗ.
<offtop>ФБ ваще прогрессивные - мои бывшие сотрудники там на Расте фигачут и
<offtop>счастливы. Так то там в основном мои друзья на плюсах фигачат.</offtop>
YK> Не могу сказать, что прям все легко давалось,
Синтаксис? Я, лично, рад, что я не пойду в Хаскель за функциональным
программированием, потому что его уже в современные плюсы завесли в том объёме,
в котором мне комфортно пейсать.
Кстати, Раст прям красавчик в этом плане. Как в гоу синтаксис почти. Нет
наследования, но есть трейты, т.е. имплементация интерфейса. Нету эксепшенов,
но есть из C++23 std::expect из-коробки, плюс эти boost:asio с async в лице
tokio или mio.
И вот, если функция возвращает std::expect, то можно дальше chain её, типа
and_then(), transform(), or_else(), а в Расте вообще switch/case написать.
Но, признаюсь, монады - это снос башки. На хабре были статьи, как можно монады
на плюсах, но я так не хочу. ;-)
Про сайд-эффект. Так не используйте глобальные переменные, или статик
переменные со стейтом, и будет вам счастье. А так то, все файловые операции,
вся сеть - сплошной сайд-эффект, только функция синуса без онова.
YK> но видимо сказался опыт erlang.
Ты, случаем, не работал в Мере в нулевых, которые были контрактрером погибшего
Канадского Нортеля? ;-) У них АТС'ка была на собственном языке и много-много
эрланга.
YK> Но точно могу сказать, что сейчас без доки hello world не напишу.
Основая фича сегодняшнего ChatGPT-версия, в том, что он тебе может забацать
темплейт на любом ЯП, прям если тебе нужен хеллоу-ворд, и далее уровня Джуна.
Даже мои на работе сознались, что из питона в гоу конвертили отдельные функции
с помощью ChatGPT, с дальнейшей доработкой напильноком. Типа, так ты потратишь
часа 2, чтобы перефигачить, а так бот тебе за 5 секунд выдаст и дальше
поправить.
Best Regards, Nil