25 Apr
2013
25 Apr
'13
8:35 p.m.
Kim-Ee Yeoh <ky3 <at> atamo.com> writes:
data Foo a where Foo :: Eq a => a -> Foo a
is equivalent to
data Foo a = Eq a => Foo a
but is different from
data Eq a => Foo a = Foo a
... and nothing in GADTs does what one would naively expect the last declaration to do.