> Not nearly as annoying as this:
>
>  data Foobar a where
>   Foo :: X -> Y -> Foobar NoZoo
>   Bar :: X -> Y -> Foobar NoZoo
>   Zoo :: Foobar NoZoo -> Foobar Zoo
>
> For some reason, if I do this I get endless type check errors. I have to
> change the top two back to Foobar a before it will work. *sigh*

Well, that means something very different obviously. It means Zoo
constructors can never take Zoo arguments, so you could only have at
most one Zoo constructor at the outermost level, having either a Foo
or a Bar inside it. Why would that give you type check errors? If it
does, you're doing something else wrong.

Cheers,

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

Reply via email to