[Haskell] GADTs and GHC