[Haskell-cafe] class default method proposal
Jules Bean
jules at jellybean.co.uk
Tue Dec 11 10:26:36 EST 2007
David Menendez wrote:
> On Dec 11, 2007 9:20 AM, Duncan Coutts <duncan.coutts at worc.ox.ac.uk
> <mailto:duncan.coutts at worc.ox.ac.uk>> wrote:
>
> So my suggestion is that we let classes declare default implementations
> of methods from super-classes.
>
> <snip.
>
> Does this proposal have any unintended consequences? I'm not sure.
> Please discuss :-)
>
>
> It creates ambiguity if two classes declare defaults for a common
> superclass.
>
> My standard example involves Functor, Monad, and Comonad. Both Monad and
> Comonad could provide a default implementation for fmap. But let's say I
> have a type which is both a Monad and a Comonad: which default
> implementation gets used?
>
> I'm disappointed to see this objection isn't listed on the wiki.
Doesn't sound like a very big problem. That would just be a compile time
error ("More than one default for fmap possible for Foo, please reslve
ambiguity").
Jules
More information about the Haskell-Cafe
mailing list