Anonymous
«Купил книгу по фримонадам, мой нелепый код наконец-то начал трансформироваться как надо, это не осталось незамеченным и мне сделали оффер с релокейтом в Норвегию».
Vasily
Фримонады появились значительно позже, кмк
Anonymous
Фримонады появились значительно позже, кмк
Примерно в 1953 вместе с первым трудом по теоркат.
Vasily
Примерно в 1953 вместе с первым трудом по теоркат.
Я имею в виду их популярность в той же скале. Год 2014 где-то
Anonymous
Я имею в виду их популярность в той же скале. Год 2014 где-то
А, не, на Хаскель вики уже очень давно висят.
Anonymous
Наброски.
Anonymous
До Скалы просто не сразу доходит это бурление математической мысли.
Vasily
Ну вот есть в том же фшарпе квотейшны
Vasily
Чем не фри монады
Vasily
На их базе даже Fable написали
Anonymous
Чем не фри монады
Я могу пригласить сюда эксперта
Vasily
Вроде и не пятница
Anonymous
И он ответит на все твои вопросы и научит всему
Anonymous
Можешь про смысл жизни тоже спрашивать
Doge
Чем не фри монады
Тем, что это не фри монады.
Vasily
Мне кажется, не стоит кидаться из крайности в крайность
Vasily
Учитывая, что у нас тут свои эксперты по фри монадам
Ilya
Которого? С опытом прода или без?
Anonymous
Doge
И он ответит на все твои вопросы и научит всему
Не надо. Если тут будет Гранин, то я начну его траллировать по поводу того, что final tagless всем лучше его фри монад.
Mikhαil
Лучше бы Илью покритиковали
Илью уже жизнь покритиковала
Mikhαil
Vasily
Причем обоих
Anonymous
Илью уже жизнь покритиковала
Наконец-то голос здравого смысла
Shub
А на самом деле я с ним несколько раз общался и он вполне адекватный как мне показалось
Мне [не]повезло общаться с людьми с реальными психическими проблемами, и ты не поверишь - они все адекватные. Причем настолько, что все успевали затащить до дюжины разных людей в водоворот своего безумия, с настоящими последствиями для последних (потеря работы, потеря крупных сумм, потеря семьи и т.п.)
Mikhαil
Вот тут я напрягся! )))
Ну вообще не могу не согласиться - мой опыт тоже показывает что они создают впечатление очень адекватных людей
Anonymous
Я сегодня полдня читал функциональный код в духе if opt.IsSome() then opt.Value()
Mikhαil
А понятно становится уже постфактум
Anonymous
И вы тут ещё про психов рассказываете
Shub
Вот тут я напрягся! )))
На ютубе есть канал «мед видео» или как-то так, там выкладывают клинический материал для специальности «психиатрия», ты можешь посмотреть и прикинуть, смог бы ты в этих людях распознать психбольных, если бы там не было психиатра, который вытаскивал бы их безумие под свет прожекторов? Это очень сложно для неспециалиста
Henry
Выражу непопулярное мнение. Прочитал пару глав книги Гранина. Пока что судить трудно, но в целом чтиво выглядит адекватным.
Henry
В любом случае, немного не понимаю столь негативного отношения.
Anonymous
А вы ж знаете, да, что Гранин ещё приложил руку к книге ФП на С++?
Doge
В любом случае, немного не понимаю столь негативного отношения.
Проблема в том, что в реальной жизни те же любимые Гранином имеют очень узкую применимость и абсолютно отвратительный перформанс по всем фронтам. При том что тот же final tagless стиль более выразительный, проще для реализации и на перформанс особо не сказывается вообще
Anonymous
В любом случае, немного не понимаю столь негативного отношения.
Да нормальное отношение, тут не столько к Гранину лично отношение, сколько к Хаскелистам в целом, которые продакшин никогда толком не видели, но бесконечно обсуждают pure functional architectures.
Anonymous
Это просто стеб.
Крылатый
А вы ж знаете, да, что Гранин ещё приложил руку к книге ФП на С++?
Да. Он довольно активен (был) в плюсовом сообществе.
Shub
Надо изящнее. Вот смотри: «мы взяли методы Гранина на вооружение в наш проект и дела пошли просто великолепно: все ошибки ловятся компилятором, выкинули юнит-тесты, то, что раньше делали 15 жавистов, сегодня делает два хаскеллиста, причем первый выступает на конференциях, а второй попутно занимаеся проджект-менеджментом. Мой лайф-коуч советует перевести всю организацию на хаскель, так что дерзайте и у вас тоже получится»
Doge
В любом случае, немного не понимаю столь негативного отношения.
Но больше над ним стебались скорее. Из-за того, что он обвиняет всех с ним не согласных в "академизме" при этом считает абсолютно нормальным строить всю архитектуру приложения на дико академической конструкции.
Doge
Главная ирония именно в этом
Shub
> tagless final > выразительно Ну по сравнению со староклингонским выразительно, не поспоришь
Anonymous
Щас будет, мол, дебажить нельзя
Anonymous
Гранин мне уже ответил на это
Anonymous
«Не нужно писать код, который надо дебажить».
Anonymous
И все. Точка.
Крылатый
Што
Shub
И все. Точка.
«Просто перестань быть бедным! Найди там, не знаю, работу что ли, чтобы платили хорошо, делай что-нибудь короче»
Anonymous
Я даже думал, а не пойти ли и не завести задачу в Джире, «начать писать код, который не нужно дебажить» и даже может быть critical приоритет поставить?
Anonymous
Перестаньте бросать опасные идеи в ноосферу. Наши ПМы их оттуда подбирают
Даже acceptance criteria какие чёткие: единственный пункт - написан код, который ни разу не дебажился. Needed QA: false.
Doge
> tagless final > выразительно Ну по сравнению со староклингонским выразительно, не поспоришь
Ну тут выразительность подразумевается в плане того, какой набор эффектов можно выразить данным приёмом. У tagless final он ощутимо шире, чем у фри монад по очевидным причинам. Да и бойлерплейта сильно меньше, потому что на практике final tagless сводится к обычным тайпклассам и функциям с констрейнтами на них.
Anonymous
Doge
Давай мы перечислим языки, на которых TF вообще доступен, хотя бы в принципе. А потом сравним их выразительность по какой-то шкале, на которой находятся хотя бы некоторые мейнстрим языки
TF используемый в качестве эрзац системы эффектов? Или TF как подход для энкодинга данных функциями? Первое - да, доступно толком только там, где можно HKT выразить хоть как-то эргономично. Второе - были бы дженерики в языке - можно сделать.
Doge
plz no
Anonymous
plz no
«Господь, жги!»
Anonymous
Alexandr typing...
Doge
Я в целом представляю как он ответит, там небось будет про то, что а как же бойлерплейт на трансформеры (но свои трансформеры никто неиронично не пишет в реальной жизни с FT)
Anonymous
Да у нас тут целая Санта Барбара.
Doge
Ооо, так а он-то тебя оказывается знает.
Я в хаскель чате как-то с ним спорил уже
Mark
Обиду затаил*
Doge
Запомнил!
Ну не знаю почему он так обо мне отзывается, я на личности с ним в спорах ни разу не переходил, так что это он зря.
Anonymous
Ну я уже много раз говорил, что считаю mtl как раз boiler plate. Люди почему-то смотрят на FM и видят бойлерплейт в интерпретаторах, когда их один раз написал и забыл. А вот boilerplate в бизнес-логике, который приходит с системами эффектов и FT, они не видят
Anonymous
(Ну и еще там была проблема квадратичного количества инстансов где-то для mtl)
Doge
Ну я уже много раз говорил, что считаю mtl как раз boiler plate. Люди почему-то смотрят на FM и видят бойлерплейт в интерпретаторах, когда их один раз написал и забыл. А вот boilerplate в бизнес-логике, который приходит с системами эффектов и FT, они не видят
Так бойлерплейт у фри монад как раз тут и будет, потому что придется как-то выкручиваться в кейсах, когда надо совместить в одном месте два разных эффекта из разных библиотек или модулей. Что через FT решается просто как нечего делать. (Как пример - см. скаловскую котовую экосистему)
Ilya
Наконец-то, спор перешёл в соответствующий чат.
Anonymous
Как тут не вспомнить слова Торвальдса: "C is the best programming language ever!”
Anonymous