Re: [heycam/webidl] Editorial: Use some more abstract operations. (#601)

bzbarsky commented on this pull request.



> @@ -12553,10 +12554,7 @@ Issue: Define those internal methods imperatively instead.
             1.  If |operation| was declared with a [=return type=] of {{boolean}}
                 and the steps returned <emu-val>false</emu-val>, then return <emu-val>false</emu-val>.
         1.  Return <emu-val>true</emu-val>.
-    1.  If |O| has an own property with name |P|, then:
-        1.  If the property is not configurable, then return <emu-val>false</emu-val>.
-        1.  Otherwise, remove the property from |O|.
-    1.  Return <emu-val>true</emu-val>.
+    1.  Return <a abstract-op>OrdinaryDelete</a>(|O|, |P|).

So... UAs are kinda all over the map here (e.g. neither Firefox nor Chrome seems to implement the named property visibility algorithm the way the spec specs it!) but this is observably different from the old spec.  That's because OrdinaryDelete calls [[GetOwnProperty]], not OrdinaryGetOwnProperty.  This means we'll do the proto walk for the visibility algorithm twice, if UAs were actually implementing the spec.  Do we really want that?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/heycam/webidl/pull/601#pullrequestreview-192764965

Received on Tuesday, 15 January 2019 17:19:44 UTC