Ответ 1
Фактически, это " функциональная зависимость". В этом случае это означает, что m
однозначно идентифицирует w
- тип m
определяет тип w
. (Это может быть лучшей ссылкой.)
class (Monoid w, Monad m) => MonadWriter w m | m -> w where
pass :: m (a,w -> w) -> m a
listen :: m a -> m (a,w)
tell :: w -> m ()
В чем смысл трубы выше? Отрывок из здесь.
Фактически, это " функциональная зависимость". В этом случае это означает, что m
однозначно идентифицирует w
- тип m
определяет тип w
. (Это может быть лучшей ссылкой.)