Functor => Applicative => Monad

Krasimir Angelov kr.angelov at
Tue Dec 14 09:24:06 CET 2010

This proposal will break every module which declares a monad instance
for some type. I expect that there will be many many broken
applications. Furthermore, if the only thing that I need is a monad
instance for some type, it is tedious do define Functor and
Applicative as well.

2010/12/14 John Smith <voldermort at>:
> I would like to formally propose that Monad become a subclass of
> Applicative, with a call for consensus by 1 February. The change is
> described on the wiki at
>, and
> ticketed at
> As this would require a change to the prelude, it will presumably be
> necessary for GHC and the Haskell report to change in tandem. The Haskell'
> committee expects proposals to have been implemented before changing the
> standard, so I will propose this to Haskell' after it is accepted for GHC.
> Hopefully this will be sufficient to avoid a race condition.
> _______________________________________________
> Libraries mailing list
> Libraries at

More information about the Libraries mailing list