"nathan virgil" <sdragon1...@gmail.com> wrote
I'm not familiar with lambdas yet, and I don't think this book will
introduce me to them; they aren't listed in the index, anyway.
lambda is just a fancy mathematical name for a simple
concept - its a block of code, like the body of a function.
In Python its even simpler, it is an expression. And we
store that expression and make it callable.
def funcname(aParam):
return <expression using aParam>
is the same as
funcname = lambda aParam: <expression using aParam>
In some languages, including some Lisp dialects function
definitions are syntactic sugar for exactly that kind of lambda
assignment. Some even make it explicit as in:
(define func
( lambda (aParam)
(expression using aParam)))
In Python its more like the other way around, functions are
defined using def and lambdas are really syntax wrapped
around that.
lambdas are often offputting to beginners but they are useful
in avoiding lots of small oneliner type functions (and the resultant
namespace clutter) and they are very important in understanding
the theory behind computing (ie. Lambda calculus).
HTH,
--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
_______________________________________________
Tutor maillist - Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor