[Haskell-cafe] Limitations of generalization of type constructors