
18 Jul
2013
18 Jul
'13
7:05 a.m.
Hm, also, with equality constraints you can make the type parametrized, too:
data Pair a' = forall a. (a ~ a', Eq a) => Pair {x::a, y::a}
equal :: Pair a -> Bool
equal (Pair x y) = x == y
On 18 July 2013 13:00, Christopher Done
Why not this?
data Pair = forall a. Eq a => Pair {x::a, y::a} equal :: Pair -> Bool equal (Pair x y) = x == y