Вопрос

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. (Это может быть, это лучшая ссылка.)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top