Que signifie un tuyau dans une définition de classe?
-
20-08-2019 - |
Question
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 ()
Quelle est la signification du tuyau ci-dessus? L’extrait de code provient de ici .
La solution
En fait, il s'agit d'une " dépendance fonctionnelle ". Dans ce cas, cela signifie que m
identifie de manière unique w
- le type <=> détermine le type <=>. ( Ceci peut être un meilleur lien.)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow