Please enable JavaScript.
Coggle requires JavaScript to display documents.
Стандартные классы типов - Coggle Diagram
Стандартные классы типов
Для конкатенации
-
Semigroup
Расширение Monoid, в которое вынесена mappend (в новых версиях)
Для отображения
Monad
-
-
-
Мощнее, чем Applicative: для (>>=) эффект может зависеть от значения левого операнда
-
-
Applicative
-
Определение
pure оборачивает значение, без эффектов
-
Усеченая версия (*>)
-
Связывает эффекты, игнорирует значение левого операнда
-
-
-
-
MonadTrans
-
-
lift
-
Аналог return, но принимающий вложенную монаду
Неявный лифтинг
-
У каждой стандартной монады есть интерфейс утилит (н-р, class MonadReader)
-
Используются реализации, поднятые предыдущим уровнем
-
Вложенность проектируют для удобства последовательного применения runner'ов (н-р, m (a, w) вместо (m a, w) для WriterT)
-
Foldable (свертка)
Для списка
Направление
-
Правая (foldr)
-
-
Полный обход списка не требуется, если функция свёртки (н-р, &&) вычислится без второго аргумента
-
-
-
-
-