Python syntax in Lisp and Scheme
eppstein at ics.uci.edu
Wed Oct 15 02:17:38 CEST 2003
In article <m3r81f1lu9.fsf at jcooper02.sagepub.com>,
Jock Cooper <jockc at mail.com> wrote:
> "Terry Reedy" <tjreedy at udel.edu> writes:
> > The default-parameter hack which substituted for closures made lambdas
> > then more awkward, but I believe they were mostly just as useful as
> > today as callbacks and as HOF args. In any case, closures were
> > introduced over two years ago in 2.1, and your original statement says
> > 'is', not 'used to be some years ago'.
> Isn't it true though that the lambda can only contain a single expression
> and no statements? That seems to limit closures somewhat.
It limits lambdas. It doesn't limit named functions. Unlike lisp, a
Python function definition can be nested within a function call, and the
inner function can access variables in the outer function's closure.
David Eppstein http://www.ics.uci.edu/~eppstein/
Univ. of California, Irvine, School of Information & Computer Science
More information about the Python-list