Allen Wirfs-Brock (2013-04-22T20:15:38.000Z)
github at esdiscuss.org (2013-07-12T02:26:54.494Z)
We don't currently have the concept of an object "belonging" to a realm. Functions have a realm association, but not non-function object. ```js Object.create(parent); //we have no way to determine if parent "belongs" to the same realm as Object.create. ``` we also currently have no way to determine whether the caller of `Object.create` is in the same or different realm as `Object.create`. ```js someObject.__proto__ = someParent; //the setter function from Object.prototype has no way to determine a realm association for someParent. let protoSetter = Object.getOwnPropertyDescriptor(Object.prototype, "__proto__"); //a proto setter from some realm let x = {}; protosetter.call(x, another); //no realm info to validate. ``` `protosetter` is essentially a universal `setPrototypeOf` function. The only way I see to tame any aspect (for example not allowing `Object.prototype.__proto__ = something`) of `__proto__` setting is via a [[Set]] over-ride on `Object.prototype`.