[Haskell-cafe] Why the reluctance to introduce the Functor requirement on Monad?

Arlen Cuss celtic at sairyx.org
Thu Jul 21 13:10:02 CEST 2011


Hi cafe!

I feel a bit like I'm speaking out of turn for bringing this up -- and
I'm sure it must have been brought up many times before -- but I hope
there can be something fruitful had from a discussion.

In my travels I've read several people with much better grasp of Haskell
than I have mention -- with a sad sigh of resignation -- that functions
like liftM and return abound because some Monads don't state their
fulfillment of Functor (or Applicative, but that's even more recent),
and thus we can't use fmap/<$> or pure.

I understand a motivation might be that code would break if the former
lot were removed, but surely they could shifted to the latter (and the
former simply be defined as the latter). It might be a very large
effort, I suppose, to comb through the standard libraries and make
everything compile again, but is there something else I'm surely missing?

Cheers,

A



More information about the Haskell-Cafe mailing list