[Proposal] Move most of Control.Monad to Control.Applicative
Ashley Yakeley
ashley at semantic.org
Sat Jul 11 19:06:06 EDT 2009
Achim Schneider wrote:
> Conal Elliott <conal at conal.net> wrote:
>
>> Exactly. and <*>, liftA, liftA2, ...
>>
> I think it's safe to say that there's a general consensus that Functor
> not being a superclass of Monad is a regrettable historical ward that
> ought to be fixed... the problem with fixing it is that it opens up a
> whole can of worms, only starting with whether or not Pointed should be
> a class by itself: While the Proper Way might be to include all of
> category-extras in the Prelude, the Proper Way might not at all be the
> Right Way.
I proposed this a year ago, but got no traction because people insisted
on some extension called "class aliases" so they wouldn't have to write
this piece of code:
class Functor MyMonad where
fmap = liftM
class Applicative MyMonad where
<*> = ap
See http://thread.gmane.org/gmane.comp.lang.haskell.prime/2641/
--
Ashley Yakeley
More information about the Haskell-prime
mailing list