andres at cs.uu.nl
Tue Oct 19 14:08:49 EDT 2004
> Simon Peyton-Jones wrote:
> > derive( Typeable (T a) )
> >But that means adding 'derive' as a keyword. Other possibilities:
> > deriving( Typeable (T a) )
> > -- (B) Re-use 'deriving' keyword
> >The trouble with (B) is that the thing inside the parens is different in
> >this situation than in a data type declaration.
> >Any other ideas?
> instance Typeable (T a) deriving
Why not even simply
instance Typeable (T a)
In other words, derivable classes define default
implementations for all their methods.
(1) no syntax change at all required
(2) derived class instances can be partially
redefined by the user
(1) Slightly more work in some cases because
a complete instance declaration is required.
instance Eq a => Eq (T a)
More information about the Glasgow-haskell-users