On Wed, Jul 9, 2008 at 9:40 PM, Ron Alford <[EMAIL PROTECTED]> wrote:
> Ok, but to make it part of a record, it needs to implement Data:
> data Expr f = In (f (Expr f)) deriving Data
>
> but this gives
>    No instances for (Data (f (Expr f)), Typeable (Expr f))
>      arising from the 'deriving' clause of a data type declaration
>                   at Planning/Wouter.hs:77:0-42

The Data class has a requirement that any instances are also instances
of Typeable, so you'd really want

> data ... = ...  deriving (Data, Typeable)

Except that I couldn't derive Typeable for your particular data type.

It isn't immediately obvious to me that the "Typeable" family of
classes deal at all with higher-kinded type constructors, but I didn't
look that hard.

-Antoine
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to