<div dir="ltr">2015-04-28 5:01 GMT+02:00 Kevin Smith <span dir="ltr"><<a href="mailto:zenparsing@gmail.com" target="_blank">zenparsing@gmail.com</a>></span>:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div>Looking over the Reflect namespace, I also see that Reflect.get and Reflect.set have been given powers not expressible with syntax: ┬áthe receiver does not have to be a prototype parent of the target.<br></div></div></div></blockquote><div><br></div><div>Did you mean "the receiver does not have to be a prototype [child] of the target"? I would expect that to be the common case. Anyway, with __proto__ / setPrototypeOf as part of the language, two objects being in a parent-child prototype relationship is not an invariant you can always count on. Additionally, if the property is an accessor, the receiver argument is passed as the `this` binding into the accessor. But it's easy enough to call getOwnPropertyDescriptor, extract the getter or setter, and `call` it with a this-binding that also isn't in a prototype relation with the object holding the accessor. So, for Reflect.{get|set} at least, I don't see an issue.</div><div><br></div><div>Cheers,</div><div>Tom</div></div></div></div>