[Haskell-cafe] type versus data declarations