[Haskell-cafe] A Specification for GADTs in Haskell?