All Monads are Functors

John Meacham john at
Thu Aug 17 20:41:38 EDT 2006

On Tue, Aug 15, 2006 at 10:34:39PM +0100, Jon Fairbairn wrote:
> It seems obvious to me that we always use an external
> definition if one exists, so I suppose the problem is
> knowing whether an external instance exists -- so this
> proposal would rely on doing something about scoping for
> instances, I suppose.

The problem is you can't have working code change its behavior because
of a module import (other than failing), say, by bringing an instance
into scope that wasn't before. There is no way to have a monad instance
'automatically' declare a functor instance without changing what the mo
instance looks like somehow which would be a backwards incompatable


John Meacham - ⑆⑆john⑈

More information about the Haskell-prime mailing list