[I'll take shot at replying (and Doug can clarify)]

A feature that is present in 3 out of 4 browsers makes it a candidate for 
inclusion into ES3.1. However, that does not guarantee that it will get 
included.

In the present case, here are a couple of data points:
(1) It was felt that providing the thisObj could potentially introduce a 
security issue.
(2) In ES3.1 we want to support Function.prototype.bind.

Taken together, this led us to propose codifying Array generics as called out 
in the proposal I sent out (i.e. without the thisObj parameter). As Doug 
mentiones below, apps could continue patching Array.prototype if they so 
desired, but going forward new apps should use bind instead of the thisObj.

Kris Zyp then made the observation that apps on ES3.1 that relied on 
feature-testing (before patching Array.prototype) would end up using the 
'incompatible' implementation was present! At that point, we thought we would 
be better off not including the proposal for now.

pratap
PS: I'll have this on the agenda for further discussion in our next conf. call.

-----Original Message-----
From: Maciej Stachowiak [mailto:[EMAIL PROTECTED]
Sent: Saturday, May 31, 2008 2:22 AM
To: Douglas Crockford
Cc: Erik Arvidsson; [EMAIL PROTECTED]; Pratap Lakshman (VJ#SDK); 
[email protected]
Subject: Re: ES3.1 Draft: Array generics


On May 20, 2008, at 7:35 AM, Douglas Crockford wrote:

> Erik Arvidsson wrote:
>> I know for a fact that not passing the thisObject as the third param
>> in methods like map etc will break real world applications such as
>> Gmail.  If JScript does not follow the defacto standard, developers
>> will have to add detection for this anormality.  I think
>> compatibility
>> with other browser should be enough for ES3.1 to standardize that the
>> thisObject should be passed as the third parameter.
>
> I disagree. Gmail can continue patching Array.prototype as it does
> now, so
> nothing breaks. But going forward, new applications should be using
> bind instead
> of a thisoObject.

I've heard it mentioned that ES3.1 has a "3 out of 4 browsers" rule.
What exactly is the scope of this rule, and why does it not apply here?

Regards,
Maciej

_______________________________________________
Es4-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es4-discuss

Reply via email to