W3C home > Mailing lists > Public > public-script-coord@w3.org > July to September 2011

Re: All ECMAScript attributes should be non-configurable

From: Brendan Eich <brendan@mozilla.org>
Date: Fri, 23 Sep 2011 12:37:16 -0700
Cc: public-script-coord@w3.org
Message-Id: <98DE10AD-E5CB-4205-807C-89C12EDD8781@mozilla.org>
To: David Bruant <david.bruant@labri.fr>
On Sep 23, 2011, at 12:31 PM, David Bruant wrote:

> Hi,
> 
> In the current form of WebIDL, if i run the following code (in a
> WebIDL-compliant environment):
> -----
> var o = Event.prototype;
> delete o.currentTarget; // works with any other attributes
> -----
> Then, all events afterward will not have a currentTarget property (since
> it's gone from the interface).
> In the DOM event spec, "currentTarget" is defined as an attribute on the
> Event.prototype object. This property must be a configurable (since not
> [[Unforgeable]]). Consequently, any script can remove it and events will
> no longer have a currentTarget property which is not what anyone want.
> 
> Consequently, I would suggest to consider all attributes to be
> non-configurable regardless of [[Unforgeab(le)]]-ility.

Why is this a good idea? There are many ways to modify standard constructors and their prototypes, some destructive. Is it really important to forbid such freedom, just because one can make a mess?

/be
Received on Friday, 23 September 2011 19:37:54 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 8 May 2013 19:30:04 UTC