[Haskell-cafe] Real World Haskell: confusion

Derek Elkins derek.a.elkins at gmail.com
Tue Jan 13 12:46:35 EST 2009


No, it means exactly what you said it means.  People abuse it to mean
the second sense.  Those people are wrong and there is already a term
for that second sense, namely "partial application."  I really wish
people would stop conflating these terms*, all it does is create
confusion.

To Eugene: The suggested meaning of "curriable", namely "able to be
curried," does not make sense.  curry takes an uncurried function to a
curried form.

* A related annoyance is people who talk about languages "supporting
currying and/or partial application."  Unless one means that the
language supports higher order functions at all by that, it doesn't make
any sense.  Haskell has no "support" for currying or partial
application.  The fact that most functions are in curried form in
Haskell is merely a convention (with, admittedly strong -social-
ramifications.)  The only way one could say Haskell "supports" currying
is that it has a lightweight notation for nested lambdas.

On Tue, 2009-01-13 at 17:17 +0100, Peter Verswyvelen wrote:
> Ah. That explains my confusion. But isn't that ambiguous terminology?
> There must be some reason for it to be that way? 
> 
> On Tue, Jan 13, 2009 at 5:05 PM, Eugene Kirpichov
> <ekirpichov at gmail.com> wrote:
>         The term 'currying' means both of these things:
>          - Converting an uncurried function to a 'curriable' one
>          - Partially applying a 'curriable' function
>         
>         2009/1/13 Peter Verswyvelen <bugfact at gmail.com>:
>         
>         > On page 102: "partial function application is named
>         currying"
>         >
>         >
>         >
>         > I thought "currying" or "to curry" means converting
>         >
>         >
>         >
>         > f :: (a,b) ->c
>         >
>         >
>         >
>         > into
>         >
>         >
>         >
>         > g :: a -> b -> c
>         >
>         >
>         >
>         > by applying "curry" (mmm, are Asian people good at
>         Haskell? :-)
>         >
>         >
>         > g = curry f
>         >
>         >
>         >
>         >
>         >
>         >
>         >
>         >
>         
>         > _______________________________________________
>         > Haskell-Cafe mailing list
>         > Haskell-Cafe at haskell.org
>         > http://www.haskell.org/mailman/listinfo/haskell-cafe
>         >
>         >
> 
> 
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe



More information about the Haskell-Cafe mailing list