
29 Nov
2010
29 Nov
'10
1:19 p.m.
On Mon, Nov 29, 2010 at 3:50 PM, Michael Snoyman
It would be useful for the Failure typeclass[1]. As-is, we made Monad the superclass just for ease of use, but there could definitely be some non-Monads for which a Failure instance makes sense. I think the one that occurred to me most recently is forms in Yesod, which have an Applicative but not Monad instance.
OP's proposal is to have class Applicative m => Monad m where ... so you could just say class Applicative f => Failure e f where ... The question is if there is something that is Pointed but not Applicative that we would like to be Failure. Cheers! =) -- Felipe.