- From: Brendan Eich <brendan@mozilla.org>
- Date: Mon, 12 Oct 2009 11:00:20 -0700
- To: Maciej Stachowiak <mjs@apple.com>
- Cc: "Mark S. Miller" <erights@google.com>, Simon Pieters <simonp@opera.com>, Anne van Kesteren <annevk@opera.com>, Cameron McCormack <cam@mcc.id.au>, public-script-coord@w3.org
On Oct 12, 2009, at 10:37 AM, Maciej Stachowiak wrote:
> Sure, I don't mean to blame Mozilla for the evil of your
> document.all hack. It was a pragmatic choice in the face of
> unfortunate deployed content. I just wanted to point out that it's
> not obviously less evil than WebKit's hack, even if you can almost
> sort of justify it in the letter of the spec. It's a tough call
> which is worse.
>
> (I think the WebKit version is in practice slightly less evil,
> because the results are more understandable, and it's robust against
> otherwise valid source-to-source transforms. The flip side is that
> it breaks the identities that known objects convert to boolean true,
> and are not == to null or undefined. Though it does preserve
> identities that include an if (typeof foo == "object") check. I
> don't think it's an easy call, and I'm not sure degree of deviation
> from the letter of the ECMAScript spec is the best metric.)
I try not to moralize ("evil") about deviating from standards, and I
did not earlier -- I pointed out how this WebKit deviation from ES
somehow passed without the kind of comment that the WindowProxy-binds-
to-|this| deviation in HTML5 excited over in es-discuss. But this is
the last you'll hear from me on the topic -- I'm neither a moralist
nor a purist when it comes to standard conformance!
>> For public-script-cood, I do not want WebIDL bent around this hard
>> case, which will tend to tempt WebIDL users to create more like it.
>> Hard cases make bad law (they teach in the law schools).
>
> Right now WebIDL doesn't have anything for this case and I don't
> think it should.
Callable collections, i.e., "caller" (confusing name; analogous to
"getter") in WebIDL, came up in connection with document.all, IIRC.
/be
Received on Monday, 12 October 2009 18:01:55 UTC