different flavours of Monad Template Library

Wolfgang Jeltsch g9ks157k at acme.softbase.org
Mon Jan 12 10:26:16 EST 2009


Am Samstag, 10. Januar 2009 22:30 schrieb Ross Paterson:
> On Sat, Jan 10, 2009 at 10:20:59PM +0100, Henning Thielemann wrote:
> > What are the changes from transformers-0.0.1.0 to transformers-0.1.0.0 ?
>
> Instances for Applicative and Alternative.

Great!

And we should try to make Applicative a superclass of Monad and drop MonadPlus 
in favor of Alternative + Monad.  It would be probably even better to have 
somethink like Alternative/MonadPlus for functors (since functors are the 
most general concept at this point) and drop Alternative and MonadPlus (or 
use the name „Alternative“ for this new class).  It’s terrible to explain all 
this legacy (Applicative not being superclass of Monad, two different classes 
for monoid functors) to students and to mention Applicative in a class 
context which already mentions Monad.

However, we’ll probably need something like John Meachem’s class alias 
proposal to make such a transition as smooth as possible.  Anyone who wants 
to hack GHC in this regard?

Best wishes,
Wolfgang


More information about the Libraries mailing list