Description
Editorial note
Should define whether @@toStringTag is writable, enumerable and configurable. All @@toStringTag properties in the ES6 spec are non-writable and non-enumerable, and configurable.
I think we really need to define these. Matching the values on the builtin properties is probably good, because fewer inconsistencies between DOM & JS is good.
The other issue with these properties, is making InterfacePrototype.@@toStringTag === "InterfacePrototype"
while Interface.@@toStringTag === "Interface"
--- I don't believe we want to give Interface
an instance property @@toStringTag
, so the alternative is making @@toStringTag
a getter which returns a distinct value depending on the receiver --- but this kind of sucks?
So yeah, I don't think we have a good answer for these semantics right now. It's probably worth discussing it a bit