Typeclassopedia « s Chapitre 5.3 Notes:Monad plus puissante que Applicative
Intuitivement, il est cette capacité d'utiliser la sortie de précédents calculs pour décider des calculs à exécuter suivant qui rend Monad plus puissant que Applicative .
Cet exemple démontre cette intuition me:
ghci> Just 100 >>= (\x -> if (x == 100) then Nothing else Just x)
Nothing
Je ne sais pas (ou attendre à ce qu'il est possible en fonction de l'explication ci-dessus) comment utiliser (<*>)
pour obtenir le même, au-dessus du code.
Existe-t-il d'autres exemples plus précis/forts qui illustrent le texte ci-dessus dans Typeclassopedia?
... et voir aussi [exemples de structures de données qui sont à chaque étape du foncteur de chaîne -> applicative -> monad] (http://stackoverflow.com/q/7220436/791604). –