[Python-Dev] Re: PEP 309, function currying
Bob Ippolito
bob at redivi.com
Mon Feb 23 19:10:02 EST 2004
On Feb 23, 2004, at 6:45 PM, Peter Harris wrote:
> Greg Ewing wrote:
>
>> But isn't that just as wrong as the first version? It still seems
>>
>> to be describing partial application, not currying as you defined
>> it above. Maybe it should say
>>
>> Function currying is the process of transforming a function that
>> takes n arguments into a function that takes one argument and
>> returns another function (itself also curried, if n > 2) that
>> takes the remaining n-1 arguments.
>>
>>
> Yes, that's currying alright, which PEP 309 does in no way describe.
> Hmm.
> OK, there is way too much imprecise thinking behind that PEP. Sorry.
>
> I did originally describe it as a closure in the first version, then
> someone corrected me about that too. I'll give the wording some more
> thought, but the problem I have is that to be useful, the class or
> function
> that implements it has to have a wieldy and clear name.
>
> Myself, I wouldn't like to use PartiallyApply(fn,*args,**kw).
>
> Quick unscientific name poll. Who likes...
> * curry()
-1, if it does partial application and not currying
> * closure()
-1, this means something else (and more general) in Python
> * partial()
+1, reasonable to type, seems intuitive enough for someone familiar
with the terminology
> * partial_apply()
+0, not english and too long :) should be partially_apply or
partial_application if it's going to be that long winded
> * delayed()
-1, implies something else to me (makes me think of async code, like a
twisted deferred)
-bob
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2357 bytes
Desc: not available
Url : http://mail.python.org/pipermail/python-dev/attachments/20040223/14e68c8d/smime.bin
More information about the Python-Dev
mailing list