W3C home > Mailing lists > Public > public-script-coord@w3.org > October to December 2009

Re: Strategies for standardizing mistakes

From: Jason Orendorff <jason.orendorff@gmail.com>
Date: Thu, 15 Oct 2009 11:29:18 -0500
Message-ID: <bb8868b90910150929y6dc49d56g4b31257f56fa4254@mail.gmail.com>
To: Jim Blandy <jimb@mozilla.com>, es-discuss <es-discuss@mozilla.org>, public-script-coord <public-script-coord@w3.org>
On Wed, Oct 14, 2009 at 7:04 PM, Jim Blandy <jimb@mozilla.com> wrote:
> One could characterize the difference by saying that Mozilla has "reluctant
> properties" whereas WebKit has "reluctant values".  :)
> [...]
> It could just be organizational bias, but reluctant properties strike me as
> the more bounded form of insanity.

I agree with Maciej. To summarize his point:

<script>
alert(!function () { return document.all; }());
alert(!document.all);
</script>

Two different results in Firefox. Beta reduction is broken in JavaScript.

(It's broken anyway for expressions containing `arguments` or `this`,
but those are statically visible.)

"Reluctant properties" are, I think, impossible to specify sanely. If
they can be specified, I'm still not sure they can be implemented
correctly. Our implementation looks at the bytecode; I wouldn't wager
that the correspondence between that and the original syntactic
context is 100% sound. I sort of doubt that everyone who touches the
compiler is even aware of the constraint.

-j
Received on Thursday, 15 October 2009 17:09:13 UTC

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