Simon Peyton-Jones wrote:
| >
| > class Functor f where fmap :: ...
| > class Functor m => Monad m where
| > ...the usual stuff...
| > fmap = liftM
| >
It seems overkill to have a whole new language feature to deal with one
library issue.
Perhaps it is...
For example, what if Functor T *is* defined explicitly, but in a later module?
I guess it would be the same as what happens now if you accidentally
declare the same instance in different modules, i.e., the system would
complain about overlapping instances.
--
Thomas H
_______________________________________________
Haskell mailing list
Haskell@haskell.org
http://www.haskell.org/mailman/listinfo/haskell