[Haskell-cafe] Type level sets with GADTs, fundeps etc

Jeff Polakow jeff.polakow at db.com
Tue Jul 15 09:43:40 EDT 2008


> data LSet t where
>     Nil :: LSet Nil
>     --either add the new element or do nothing
>     Ins :: (Member a t b
>           , If b (LSet t) (LSet (a ::: t)) r) 
>           => L a -> LSet t -> r
The constructor Ins needs to return an LSet. Maybe try replacing 
occurrences of r with (LSet r).



This e-mail may contain confidential and/or privileged information. If you 
are not the intended recipient (or have received this e-mail in error) 
please notify the sender immediately and destroy this e-mail. Any 
unauthorized copying, disclosure or distribution of the material in this 
e-mail is strictly forbidden.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20080715/ebb48b10/attachment.htm

More information about the Haskell-Cafe mailing list