Gregory Ewing <greg.ew...@canterbury.ac.nz> writes: > Alain Ketterlin wrote: >> But going against generally accepted semantics should at least >> be clearly indicated. Lambda is one of the oldest computing abstraction, >> and they are at the core of any functional programming language. > > Yes, and Python's lambdas behave exactly the *same* way as > every other language's lambdas in this area. Changing it to > do early binding would be "going against generally accepted > semantics".
You must be kidding. Like many others, you seem to think that Scheme is a typical functional language, which it is not. Learn about ML (i.e., SML or CaML), Erlang, Haskell, etc. You can read, e.g., http://en.wikipedia.org/wiki/Closure_%28computer_science%29 The reason why we have the kind of lambdas we have in python (and scheme, and javascript, etc.) is just that it is way easier to implement. That's all I've said. And people have gotten used to it, without ever realizing they are using something completely different from what Church called the "lambda abstraction". Whether the python/... concept of lambda is useful or not is another, subjective question, that I'm not intersted in. If you're pleased with it, go ahead. (End of discussion for me.) -- Alain. -- http://mail.python.org/mailman/listinfo/python-list