return when desugaring to closures

Brendan Eich brendan at
Sat Oct 11 15:26:39 PDT 2008

On Oct 11, 2008, at 3:16 PM, Brendan Eich wrote:

> Of course everything could be lambda-coded, but that's not harmonious
> or usable. Just let as new var is agreed upon, and let blocks and
> expressions could be let coded if there is no name shadowing (else
> they'd need lambda-coding).

Of course, let expressions would need lambda-coding no matter what  
names were shadowed. The experience gained in JS1.7+ shows more let  
block usage than let expression, but expression temporaries (lacking  
macros and ignoring automatically generated code) are uncommon in  
today's JS. The function-expression-immediately-applied cliché usually  
has statements for effect, if not a return -- not a single expression  
in its body.


More information about the Es-discuss mailing list