W3C home > Mailing lists > Public > public-webapps@w3.org > October to December 2011

Re: QSA, the problem with ":scope", and naming

From: Alex Russell <slightlyoff@google.com>
Date: Thu, 20 Oct 2011 15:23:24 +0100
Message-ID: <CANr5HFVepZBsTxZsfGgKCF8J0TPe4afrVwxDx3K1+pbo99X1Qw@mail.gmail.com>
To: Boris Zbarsky <bzbarsky@mit.edu>
Cc: public-webapps@w3.org
On Thu, Oct 20, 2011 at 3:14 PM, Boris Zbarsky <bzbarsky@mit.edu> wrote:
> On 10/20/11 7:18 AM, Alex Russell wrote:
>>
>> No we don't. The fact that there's someone else who has a handle to
>> the list and can mutate it underneath you
>
> There is no sane way to mutate the list on the part of the browser if
> someone else is also messing with it, because the someone else can violate
> basic invariants the browser's behavior needs to maintain.

Right. So you need to vend an apparently-immutable Array, one which
can only be changed by the browser. I think that could be accomplished
in terms of Proxies. But it's still an Array type.

>> unless the argument is that the slots should
>> be non-configurable, non-writable except by the browser that's also
>> holding a ref to it.
>
> "Yes".
>
> Though I don't know what "slots" you're talking about; the only sane JS
> implementation of live nodelists is as a proxy.  There's no way to get the
> behaviors that browsers have for them otherwise.

But it can be a Proxy to an *Array*, not to some weird non-Array type.
Received on Thursday, 20 October 2011 14:24:20 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 18:49:48 GMT