On 11-jan-2007, at 16:30, Marco Túlio Gontijo e Silva wrote:
Em Qui, 2007-01-11 às 16:14 +0100, minh thu escreveu:
you might want invistigate "heterogeneous lists" : in your case, it's
"heterogeneous typle".
But aren't tuples always heterogeneous?
Yes, and precisely therein lies the problem. There is no way
for the compiler to infer that in
tupleMap f (a, b) = (f a, f b)
the type of f should be polymorphic. If you want it to be,
explicitly require it to be so:
tupleMap :: (forall a b . a -> b) -> (b,c) -> (d,e)
tupleMap f (a,b) = (f a, f b)
However, this will still not allow you to write
tupleMap show ("string",3)
as you require f to be fully polymorphic, and not constrained by any
context.
With regards, Arthur.
--
/\ / | [EMAIL PROTECTED] | Work like you don't need
the money
/__\ / | A friend is someone with whom | Love like you have never
been hurt
/ \/__ | you can dare to be yourself | Dance like there's nobody
watching
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe