If you ask a scientist, even a computer scientist, what &quot;lambda&quot; means he will invariably answer that it is a letter in the Greek alphabet. Only a few people working with lambda calculus will think of &quot;lambda&quot; as being related to a function. Many beginners (included myself) were puzzled by &quot;lambda&quot; the first time they meet it. It doesn&#39;t look as clean as the rest of python syntax where you hardly need explain what the keywords mean.<br>
<br>Guido once said that he hadn&#39;t found a better name. Well, I think that almost *any* name will do better! ;-) Especially a name that emphasizes the fact that lambda construction are in fact functions. This is what Guido repeats over and over again: lambda is just synctactic sugar for a function definition. Here are suggestion for a new name for lambda, which will much better describe what it is, namely a *function*. Since function are defined with the keyword &quot;def&quot; i&#39;d suggest the following possibilities:<br>
- ldef (local definition, or indeed, lambda definition ;-))<br>- idef (inline definition)<br>- cdef (compact definition)<br>- sdef (shorthand definition)<br>etc.<br>anything along theses lines will be more descriptive than &quot;lambda&quot; and most newcommers will immediately guess what it is about without wading through the manual. The python code will also be more readable for non python specialists.<br>
<br>It&#39;s too late to change the name lambda in Python 2.x but why not change it in python 3000 since this release breaks backwards compatibility anyway?<br><br>Any thoughts about that? Any ideas of other better names than &quot;lambda&quot;?<br>
<br>Thanks!<br><br>