Proposal for stand-alone deriving declarations?
Michael Shulman
viritrilbia at gmail.com
Fri Oct 6 11:39:39 EDT 2006
On 10/6/06, John Hughes <rjmh at cs.chalmers.se> wrote:
> deriving (Eq Foo, Ord Foo)
>
> instead of
>
> deriving (Eq, Ord) for Foo
So what does
newtype Foo a = Foo a
newtype Bar b = Bar b
class C a b
deriving (C (Foo a) (Bar b))
mean? I could see it meaning any or all of the following:
instance (C (Foo a) b) => (C (Foo a) (Bar b))
instance (C a (Bar b)) => (C (Foo a) (Bar b))
instance (C a b) => (C (Foo a) (Bar b))
Perhaps I am misunderstanding?
Mike
More information about the Haskell-prime
mailing list