[Haskell-cafe] Well-typed design issue