- From: Domenic Denicola <domenic@domenicdenicola.com>
- Date: Wed, 26 Jun 2013 15:23:15 +0000
- To: Boris Zbarsky <bzbarsky@MIT.EDU>, Marcos Caceres <w3c@marcosc.com>
- CC: "public-script-coord@w3.org" <public-script-coord@w3.org>
From: Boris Zbarsky [mailto:bzbarsky@MIT.EDU] > On 6/26/13 11:00 AM, Marcos Caceres wrote: > >> As in get notified when it changes? Or as in always see whatever the > >> state is now as opposed to what it was then? > > > > Yes, get notified when it changes. > > OK, that tells you nothing about array vs sequence. As in, when the notification happens you could re-examine the object you already have, or you could getCalls() to get a new sequence, depending on whether the object you have mutates itself. This is actually a really important point. `getCalls()` returning a fresh, but mutable, array seems much more reasonable than a `calls` property that (a) cannot be messed with by script; (b) changes out from under you due to C++ magic. Unfortunately that does kill any hopes of using `Object.observe` since there's no single object you can observe. I think if you contemplated how to implement this in JavaScript there's not much else that would make sense. (Could be wrong, though!) (On second thought, I suppose a two-layered system like promises have, where the creator retains modification rights but the user cannot mess with it, would work. But that would definitely not be array-like in behavior, and would need to be implemented using proxies, so, kinda weird.)
Received on Wednesday, 26 June 2013 15:23:51 UTC