Size: a a a

2020 December 09

АГ

Александр Гранин... in fprog_spb
Alexander Tchitchigin
А я профункторную оптику так использую — нифига не понимаю, что такое профунктор, но мне как-то пофиг на детали реализации, пользуюсь интерфейсом и не заморачиваюсь. 🤷‍♀️
А другим вовсе не пофиг, потому что они не знают, как использовать профунктор, даже если есть "интерфейс"
источник

K

Kir in fprog_spb
Alexander Tchitchigin
А я профункторную оптику так использую — нифига не понимаю, что такое профунктор, но мне как-то пофиг на детали реализации, пользуюсь интерфейсом и не заморачиваюсь. 🤷‍♀️
Оптику-то можно использовать по аналогии с парами (get, set) / (view, review), и волшебным оператором композиции
источник

AP

Aleksei (astynax) Pi... in fprog_spb
Alexander Tchitchigin
А я профункторную оптику так использую — нифига не понимаю, что такое профунктор, но мне как-то пофиг на детали реализации, пользуюсь интерфейсом и не заморачиваюсь. 🤷‍♀️
"data manipulation language" назвали бы, люди бы потянулись к
источник

K

Kir in fprog_spb
Aleksei (astynax) Pirogov
"data manipulation language" назвали бы, люди бы потянулись к
Вот да
источник

AP

Aleksei (astynax) Pi... in fprog_spb
В народе "DSL — штука просто работает, мне не нужно внутрь лезть"
источник

AP

Aleksei (astynax) Pi... in fprog_spb
Вот и оптика — DSL
источник

AP

Aleksei (astynax) Pi... in fprog_spb
И фримонады
источник

АГ

Александр Гранин... in fprog_spb
Опять же, читаешь какой-нибудь пост хаскеллиста, и там: "а теперь мы позовем функцию <такую-то>, потому что это у нас <профунктор|аппликатив|изо|whatever>". Это на первый взгляд только объяснение, а на самом деле стороннему человеку вообще не объяснение
источник

АГ

Александр Гранин... in fprog_spb
Kir
Хорошо, а обработку произвольных исключений?
А зачем тут ContT?
источник

AT

Alexander Tchitchigi... in fprog_spb
Александр Гранин
А другим вовсе не пофиг, потому что они не знают, как использовать профунктор, даже если есть "интерфейс"
Ну а кому-то не пофиг на свободные монады и они не могут их использовать, потому что не понимают "математики". А кто-то вообще ничего кроме C использовать не может, потому что слишком абстрактно и непонятно, во что скомпилируется. Давайте снова все будем писать на Ассемблере? 🤷‍♀️
источник

K

Kir in fprog_spb
Александр Гранин
Как итог, у нас полно библиотек, где все кишки торчат наружу, и невозможно пользоваться, пока не выучишь какой-нибудь теоркат
Вот в хороших системах эффектов не торчат, например. И есть https://github.com/seereason/mtl-unleashed
источник

A

Andrey in fprog_spb
Александр Гранин
Как итог, у нас полно библиотек, где все кишки торчат наружу, и невозможно пользоваться, пока не выучишь какой-нибудь теоркат
ага, а потом, когда требуется чуть больше от библиотеки, приходится её форкать, т.к. её автор утверждает, что
- интерфейса хватит всем,
- ты делаешь что-то неправильно,
- а как правильно делать - не скажу,

а кишки спрятал, да.
источник

AP

Aleksei (astynax) Pi... in fprog_spb
Александр Гранин
Опять же, читаешь какой-нибудь пост хаскеллиста, и там: "а теперь мы позовем функцию <такую-то>, потому что это у нас <профунктор|аппликатив|изо|whatever>". Это на первый взгляд только объяснение, а на самом деле стороннему человеку вообще не объяснение
Пфф, "мост для приспособленецев" тоже не сильно понятен человеку со стороны
источник

K

Kir in fprog_spb
Александр Гранин
А зачем тут ContT?
ContT - это для примера. А исключения ближе к телу
источник

YS

Yan Shkurinskiy in fprog_spb
Andrey
ага, а потом, когда требуется чуть больше от библиотеки, приходится её форкать, т.к. её автор утверждает, что
- интерфейса хватит всем,
- ты делаешь что-то неправильно,
- а как правильно делать - не скажу,

а кишки спрятал, да.
жуть(
источник

YS

Yan Shkurinskiy in fprog_spb
(самому пришлось форкать json-rpc-server из-за хороших интерфейсов и спрятанных кишков)
источник

DP

Dmitry Ponyatov in fprog_spb
Alexander Tchitchigin
И даже хуже! Эта клятая математика подаётся как средство моделирования предметной области, что, как мы все прекрасно знаем, бред сивой кобылы, опиум для народа и обман трудящихся!!! 🧐
при попытках обмазать математикой предметную область абстракции рвутся на раз, и оттуда торчит голая задница реальности
источник

АГ

Александр Гранин... in fprog_spb
Alexander Tchitchigin
Ну а кому-то не пофиг на свободные монады и они не могут их использовать, потому что не понимают "математики". А кто-то вообще ничего кроме C использовать не может, потому что слишком абстрактно и непонятно, во что скомпилируется. Давайте снова все будем писать на Ассемблере? 🤷‍♀️
Ты опять путаешь. Им не нужно использовать фри монады, когда они работают с моим фреймворком. Смотри мою картинку про уровни. Фри монады вообще не видны (ниже - зачеркнуто) выше уровня "high-level solutions". А ты говоришь - ну ведь есть же вот такой implementation detail, значит, про него нужно знать. Нет, не нужно. Вообще можно не упоминать нигде, что там фри монады внутри
источник

AT

Alexander Tchitchigi... in fprog_spb
Dmitry Ponyatov
при попытках обмазать математикой предметную область абстракции рвутся на раз, и оттуда торчит голая задница реальности
Может, зависит от математических способностей обмазывающего? Я, конечно, не пробовал, так у меня и способностей нет. 😃
источник

АГ

Александр Гранин... in fprog_spb
Kir
Вот в хороших системах эффектов не торчат, например. И есть https://github.com/seereason/mtl-unleashed
Внутренние механизмы в системах эффектов, возможно, и не торчат, но там начинают проявляться еще и другие проблемы дизайна
источник