[Python-Dev] Adventures with ASTs - Inline Lambda (original) (raw)

Talin talin at acm.org
Sat Feb 18 07:47:44 CET 2006


All right, the patch is up on SF. Sorry for the delay, I accidentally left my powerbook about an hour's drive away from home, and had to drive to go get it this morning :)

To those who were asking what advantage the new syntax has - well, from a technical perspective there are none, since the underlying implementation is identical. The only (minor) difference is in the syntactical ambiguity, which both forms have - with lambda you can't be certain when to stop parsing the result expression, whereas with 'given' you can't be certain when to stop parsing the argument list.

I see the primary advantage of the inline syntax as pedagogical - given a choice, I would rather explain the "given" syntax to a novice programmer than try to explain lambda. This is especially true given the similarity in form to generator expressions - in other words, once you've gone through the effort of explaining generator expressions, you can re-use most of that explanation when explaining "function expressions"; whereas with lambda, which looks like nothing else in Python, you have to start from scratch.

-- Talin



More information about the Python-Dev mailing list