Hi All,

I have a data type defined as

> data D a = D1 Int | D2 a

Follow this definition, I have D2 Int,D2 Bool and D2 [D2 Int] as instances
of type D.

I want to write an overloaded function lift which lifts an atom type to D.
 
It is easily done for D2 Int and D2 Bool using type classes.I can have

> class Liftable a where
> lift :: a -> L a
>  
> instance Liftable Int where
>   lift x = D2 x 

However, I have problem with D2 [D2 Int].I want to lift [Int] to D2 [D2
Int].

Is there any solution to it?

Thank you very much.
  
 -W-M-
  @ @  
   |
  \_/   



_______________________________________________
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell

Reply via email to