On Mon, Jul 14, 2014 at 1:47 PM, Domenic Denicola <
domenic@domenicdenicola.com> wrote:
> From: Ryan Sleevi <sleevi@google.com>
>
> > If [[algorithm]] contains a JS object, I do not see how we can (safely)
> invoke the Getter at any point during a promises' asynchronous execution
> in a way that is undetectable, which I consider an essential property for
> the Promise code (and, more generally, to the concept of the immutability
> of [[algorithm]] from the POV of script authors)
>
> Well, as long as [[algorithm]] is never exposed to users, I am pretty sure
> it would be undetectable and safe.
>
> That said, reviewing your other message, it is indeed probably more
> straightforward for WebIDL to define a way to clone dictionaries, and then
> you don't have to worry about it.
It'd be detectable via Object.prototype, since the conversion of an IDL
dictionary to an ES object inherits from Object.prototype