return when desugaring to closures

Mark S. Miller erights at
Thu Aug 21 18:19:10 PDT 2008

On Thu, Aug 21, 2008 at 5:48 PM, Brendan Eich <brendan at> wrote:
> I said that many on the committee were in favor, notionally and in
> some details, of much of JS1.7's "convenience features", and some
> beyond:
> let as new var
> destructuring assignment and binding forms
> generators (modulo keyword issue)
> expression closures
> spread operator
> rest parameters
> optional parameters

I am in favor of all these including "destructuring binding forms".
But I don't know what "destructuring assignment" is. I'm also in favor
of some kind of class sugar and some kind of dynamic type-like
annotation on variables, properties, and function return values.

The two I'm most nervous about are generators and the type-like
annotations. Since generators are shallow, it seems clear that there
should be some local cps-style transform of generators into the
remainder of the language. However, it would be a relief to know what
that cps-style transform actually looks like, and what edge cases it
has. Anyone care to post a proposal?

Regarding type-like annotations, I think the proposal at
<> is heading in a
good direction.


More information about the Es-discuss mailing list