rnystrom at google.com
Wed Jan 11 10:16:16 PST 2012
On Wed, Jan 11, 2012 at 10:10 AM, John J Barton <johnjbarton at johnjbarton.com
> the case for blocks that act like functions when passed as arguments but
> have loop-up rules more like nested blocks.
> Of course these are called 'block lambdas', and I suggest that this is a
> problem. Given that very few programmers understand lambda calculus (and
> this will not change), the word 'lambda' is equivalent to "too difficult to
> When I looked up lambda on http://en.wikipedia.org/wiki/Lambda I read
> In mathematical logic <http://en.wikipedia.org/wiki/Mathematical_logic>
> and computer science <http://en.wikipedia.org/wiki/Computer_science>,
> lambda is used to introduce an anonymous function<http://en.wikipedia.org/wiki/Anonymous_function> expressed
> with the concepts of lambda calculus<http://en.wikipedia.org/wiki/Lambda_calculus>
> and then "Oh that is what they meant with all that 'block-lambda' stuff".
> If the discussion here were on a new ES feature "anonymous methods", then
> I guess many more developers would be interested. If this feature had the
> properties outlined in the blog post, then I think many developers would
> understand the value of this potential feature. As it is I guess they stop
> reading as soon as they see the word 'lambda'.
For what it's worth, C#, Python, Ruby, Java (in JDK 8), and C++ (in C++11)
all use "lambda" to roughly mean "anonymous closure". It's a strange term
but it's becoming widespread. "lambda" is a keyword in Ruby, Python, and
Scheme (where "keyword" -> "special form" in Scheme for the nitpickers).
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the es-discuss