On Sun, Oct 2, 2011 at 9:00 AM, Felipe Almeida Lessa
<felipe.lessa@gmail.com> wrote:
On Sun, Oct 2, 2011 at 12:04 AM, Rustom Mody <
rustompmody@gmail.com> wrote:
> How would you classify a function of type (Int, Int) -> Int -> Int ?
It's curried. Uncurried would be:
((Int, Int), Int) -> Int
Yes, if you mean that uncurrying it gives the type ((Int, Int), Int) -> Int
But it can also be curried to get the type Int -> Int -> Int -> Int
Does that not make it uncurried as well?
> Likewise if we have a polymorphic foo: Int -> a and we instantiate a to Int
> -> Int does foo suddenly get curried?
Int -> a is both curried and uncurried. Int -> Int -> Int is just curried.
--
Felipe.