[Haskell-cafe] returning a polymorphic function