Update on ES3.1 block scoped function declarations

Brendan Eich brendan at mozilla.org
Thu Jul 10 18:53:30 PDT 2008

On Jul 10, 2008, at 6:08 PM, Waldemar Horwat wrote:

> Brendan,
> You're beating a dead horse here.

Sorry, no -- the question of whether and how much of ES4 is pulled  
into ES3.1, requiring costly and untestable work within the framework  
of the ES3 spec, is a live one, and it should be for anyone who cares  
about either version being done, and about 3.1 being done before 4.

>   If this call to eval is allowed, the only reasonable answer is  
> 21.  All that means is that you must be able to recreate the  
> bindings if the function uses eval.  Unless you're proposing to  
> take block-scoped declarations out of ES4, what's the harm with  
> ES3.1 having a compatible subset of them?

The harm is of two kinds:

1. That ES3.1 will be pushed through Ecma standardization this  
calendar year, then to ISO fast track, with zero implementations.

2. That ES3.1 spec work, using and extending the clumsy formalisms of  
ES1-3, will take a lot of time from everyone involved, with  
opportunity costs on other work including ES4, actual implementation  
improvements, better subsets like Caja, etc.

We could turn ES3.1 into ES4 but I think you see the problem there.  
I'm suggesting it is a problem that 3.1 is growing to formalize  
lexical scope. It contradicts the stated aspiration of at least some  
(Mark was among them) at the January face to face that ES3.1 avoid  
mission creep, reflect "ES3 + reality", and be done this calendar year.


More information about the Es4-discuss mailing list