On 10/15/14, 3:45 PM, Allen Wirfs-Brock wrote:
Right, but in practice, for different-origin pages, don't you use various
forms of serialization/proxying to provide Vat-like object reference isolation?
Maybe.
First, note that being "different-origin" is not a static property due
to document.domain. In practice, things can start out different-origin
but become same-origin, if their origins are "related enough". Or start
same-origin and become different-origin.
Second, while Gecko does effectively have a proxy at each Realm boundary
(including same-origin Realms), other UAs do not. As a result, in some
UAs it's possible to get hold of an object that's not same-origin with
you at this moment, if it or other objects related to it were
same-origin with you in the past.
If you do that, then it feels like multiple Vats that share a single execution
thread. We didn't current have that concept in ES, but we probably could.
That's true.
We do need to pin this down in some way, since this is all very much
observable in terms of event ordering, at least for things that can
reach each other, because it matters which things share event queues
with which other things.
Don't multi-process (eg, process per tab, etc.) browsers in fact have multiple
execution threads?
Yes.
So do some single-process browsers (e.g. Presto-based Opera did, I think).
A PromiseReactionJob that is associated with a marked Realm
Are PromiseReactionJobs associated with a Realm at all? If so, how is
that Realm determined?
Regardless, it seems desirable to be able to describe what happens in terms of
the specified Promise/Realm/Job semantics.
Agreed!
-Boris
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss