blob: 6d9381296eb4f759e015183a0dca77bec00a2866 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
|
{-# LANGUAGE TypeFamilies, GADTs #-}
module GADT8 where
data Pair p where
Pair :: p~(a,b) => a -> b -> Pair p
-- this works:
-- Pair :: a -> b -> Pair (a,b)
foo :: Pair ((), ()) -> Pair ((), ())
foo (Pair x y) = Pair x y
|