Changing [[Prototype]]

Brendan Eich brendan at
Fri Dec 28 02:20:09 PST 2012

David Bruant wrote:
> Le 28/12/2012 10:29, Andreas Rossberg a écrit :
>> On 28 December 2012 05:38, Brendan Eich <brendan at 
>> <mailto:brendan at>> wrote:
>>     No point whinging about it in appendices that either no one
>>     reads, or else people read and think less of the spec on that
>>     account.
>> The fewer read about it the better, no? :)
>> Why would people think less about the spec?
>> I think it makes sense to separate out legacy features as normative 
>> optional, like it was the plan originally.
> That's an interesting idea.

That idea, a retasking of Annex B, was rejected for reasons repeated below.

> What about a specific section of the spec called "de facto standards"? 
> It would indicate that it's part of the standard, but is a scar from 
> history rather than a legit feature.
> An intro would explain what this is all about.
> It would be an interesting middleground between normal spec features 
> (which people take for the Holy Graal) and appendices (which people 
> will skip).
> __{define|lookup}{G|S}etter__ would fit well in this section.
Those never made it into IE. Why include them? There's a bright line 
drawn by interop.

>> Then implementations can still choose not to implement them when they 
>> can afford it, e.g. when JS is introduced into a new space where no 
>> such legacy exists.
> A new web browser will need these legacy features, but I agree with 
> non-browser implementation.

And as we discussed in accepting __proto__ as normative not-optional:

* Code gets ported, it is unlikely a new embedding will avoid __proto__ 
if it becomes popular (Node.js is an example of how __proto__ spread).

* SES and other such systems are better off with normative mandatory, 
not normative optional.


More information about the es-discuss mailing list