On Tue, Jun 05, 2018 at 09:26:58AM +0200, Jan de Mooij wrote: > On Tue, Jun 5, 2018 at 7:50 AM, Paul Bone <pb...@mozilla.com> wrote: > > > Could you explain (or point me to an explaination) of what Realms are for? > > I've gathered that they're a TC39 thing that's being added, maybe for > > security? but since they don't restrict references between realms the way > > compartments and CCWs do, maybe I'm mistaken? Why add them? > > > > I expect the answer is in one of the references or almost-common knowledge, > > but I seem to have missed it, sorry. > > > > Realms are a TC39 thing, but they're not new - a "realm" is just a global > object and things associated with it (for instance, each global object has > its own copy of Object.prototype and other builtin functions and > prototypes). See https://tc39.github.io/ecma262/#sec-code-realms > > So if you have a website with 10 <iframe>s, there will be 11 global objects > and currently that means there must be 11 compartments. We're changing that > so there will still be 11 globals/realms, but it will be possible to have > less than 11 compartments because we will be able to group multiple > globals/realms in one compartment. This will eliminate CCW overhead and > that's why we're doing this.
Thanks Jan, that makes sense. -- Paul Bone http://paul.bone.id.au _______________________________________________ dev-tech-js-engine-internals mailing list dev-tech-js-engine-internals@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-tech-js-engine-internals