[Haskell-cafe] Haskell's

Jules Bean jules at jellybean.co.uk
Tue Jul 3 07:15:55 EDT 2007


Peter Verswyvelen wrote:
> Ah, thanks for the correction. So if I understand it correctly, this is currying:
> 
> when
> 
> f :: (a,b) -> c
> 
> then
> 
> g :: a -> (b,c)
> 
> is the curried form of f? So currying has to do with tuples? 


g :: a -> b -> c

(also could be written as g :: a -> (b -> c) )

is the curried form of f.

Curry has to do with the isomorphism between tuples, and 
functions-returning-functions.


> 
> And partial application is just leaving away some tail arguments?


Depending how generally you want to construe it; you might say "partial 
application is leaving off tail arguments" or "partial application is 
leaving off some arguments".

Currying makes partial application "easier".

Jules


More information about the Haskell-Cafe mailing list