23:35 | <jugglinmike> | Does ECMA262 formally define the spec-internal syntax, "myvariable.[[SomeInternalSlot]]" ? |
23:36 | <jugglinmike> | It's a bit tough to search for that pattern, but it doesn't seem to be explained in the Notational Conventions section |
23:40 | <bakkot> | jugglinmike: well, there's
though that only says you can use it for records, not internal slots in general |
23:40 | <bakkot> | probably https://tc39.es/ecma262/multipage/ecmascript-data-types-and-values.html#sec-object-internal-methods-and-internal-slots should have a sentence about how internal slots are read |
23:41 | <jugglinmike> | Ahah! Thanks |
23:42 | <jugglinmike> | bakkot: At the moment, there are at least two cases where a slot that has not been explicitly assigned a value is assumed to provide the value "undefined". Should that behavior be specified for all records? For internal slots only? Or should we set the value "undefined" in InternalObjectCreate? Or none of those things? |
23:43 | <bakkot> | Unless specified otherwise, the initial value of an internal slot is the value undefined. |
23:44 | <bakkot> | I'm not sure if that holds for record fields, though. I think we generally initialize record fields before reading them? |
23:45 | <jugglinmike> | Hm, I don't know about that. The text you cited covers the cases I've been looking at, though |
23:46 | <jugglinmike> | So thanks twice over :) |