1{-# LANGUAGE GADTs      #-}
2{-# LANGUAGE LambdaCase #-}
3
4data GADT a where
5  B1 :: GADT Bool
6  B2 :: GADT Bool
7  Int :: GADT Int
8  Var :: GADT a
9
10
11hasHomo :: GADT Bool -> GADT a
12hasHomo g = _
13
14cantHomo :: GADT a -> GADT Int
15cantHomo g = _
16
17hasHomoLam :: GADT Bool -> GADT a
18hasHomoLam = _
19
20cantHomoLam :: GADT a -> GADT Int
21cantHomoLam = _
22
23