[Haskell-beginners] problems with GADTs