On 10/16/15 11:57 AM, Domenic Denicola wrote:
What I was trying to point out was that by speccing a sufficiently powerful proxy object we could stay entirely within ES semantics
While true, if I recall correctly abarth had objections to that specification approach because of the difficulty of proving that Blink's implementation is black-box indistinguishable from it. So you probably want to consult with whoever is responsible for this stuff in Blink right now before going down this road.
It sounded like you were proposing speccing a world where multiple different objects get minted and then we override the definition of ===, but I guess you were just talking about implementation strategies, and were not making a spec proposal.
I believe the intent of the current etherpad is to describe constraints in more or less those terms (which most closely match how Blink implements this stuff right now), but in a way that can map to different implementation strategies. Again, the choice of specification language was largely to placate the Blink implementors into maybe even considering implementing the resulting spec.
-Boris