All streams
Search
Write a publication
Pull to refresh
14
0.4
Send message

ReaderT это трансформер. Монадой будет ReaderT m, где m-монада.

Практический смысл можно найти, например, в filterM. Хотя и несколько синтетический.

Он же, в данном случае, эндофунктор. Тогда если мы Nullable в кодомен не включили, то и в домене его нет. Тогда куда функтор?

Каждый раз, читая ваши статьи, нахожу что-то новое.
Интересно, раз у нас уже есть bytestring в памяти за бесплатно, может можно подключить стратегии и работать параллельно намвсех ядрах.
Надо только придумать как склеить результаты.

Возникло странное недопонимание. Я нигде про запреты не писал.
State s — монада, внутри которой есть доступ к состоянию
и, с этой позиции, вычисление a->(State s) b не является чистой функцией от a.
Но, после разворачивания, вычисление становится чистой функцией от (a,s).
Побочный эффект это не только IO.

f :: a->State s b не чистая,
Но runState (f x) s0 — чистая.
Такой вот фокус.

Где гарантия, что завтра условно монады не статут с душком?


Гарантия в том, что это не практики а математика.
Они могут морально устареть, но стать от этого неправильными не могут никак.
… или негарантированном порядке вычислений

и тут, внезапно, на сцене появляется ее величество ассоциативность.
Лично мне стало очень интересно сколько из участников беседы реально понимают что такое return и bind, как они связаны с join и причем тут какие-то «законы». Ну и до кучи что же такое категория Клейсли.
ФП без ТК это конечно хорошо, но — плохо.

Спойлер: return в хаскеле НЕ ключевое слово.

Я не настолько силён в английском. Итак, там нарушена ассоциативность, о чем внизу написано. Как это использовать, не взорвав себе голову.

Вы просто не умете готовить этих кошек.


Кмк ошибка в том, что декомпозиция задачи осуществляется в импеоативной парадигме, а решение в функциональной, отсюда конфликт.

Можно пример того, что используется как монада, но не монада? Просто мне тяжело представить, как можно пренебречь, например, отсутствием ассоциативности.

Дело в том, что монада чтения это вполне конкретный эндофунктор, со вполне конкретными естественными преобразованиями. И да, с помощью неё можно организовать доступ к некоторому контексту. Но это не значит, что любой способ доступа к контексту будет монадой и, тем более, монадой Reader.

Монады это не шаблоны проектирования.

Что-то не то вы загуглили. Линза это такое совмещение геттера с сеттером, поддерживающее композицию.

В математике нет царских путей.

Information

Rating
2,122-nd
Registered
Activity