Concise functions, Nonexistent lambdas, Explicit tail calls

Michael Day mikeday at yeslogic.com
Tue Dec 9 16:52:00 PST 2008


Hi Brendan,

> I wasn't sure whether "expression comprehensions" meant expression closures:
> 
> function hi() "there";

Oops, yes, I meant expression closures, although array comprehensions 
are also cool :)

> were not what I would call clear specifications -- at least not to the 
> audience of JS implementors working in C++ or a similar language, and 
> not experienced lambda-coders.

Perhaps we can separate these two proposals:

  - using the lambda calculus to specify JavaScript

and

  - adding a new "lambda" construct to the language

My proposal was *not* to add a new lambda construct to the language, but 
that wouldn't prevent the use of the lambda calculus as a specification 
tool if it was felt to be desirable.

Other proposals have suggested adding lambda constructs to the language 
with various syntactic choices, but do not require the use of the lambda 
calculus in the specification; the existing pseudo-code approach would 
still work to specify their behaviour.

Since the two uses of lambda are quite different and independent we need 
to be clear which one we mean when we talk about "lambda in JavaScript".

Cheers,

Michael

-- 
Print XML with Prince!
http://www.princexml.com


More information about the Es-discuss mailing list