bzbarsky at MIT.EDU
Tue Jun 17 20:00:31 PDT 2014
On 6/17/14, 8:47 PM, Allen Wirfs-Brock wrote:
> You mean, the already initialized checks which fall out of objects having distinct allocation and initialization functions. Those checks only occur in functions that directly access private internal state of built-in oibjects.
I should note that for typical "DOM" (not just nodes; pretty much every
non-ES-builtin in the web platform) this is every single function. And
that the current separation of allocation and initialization means that
for these objects we have the following choices (probably on a
1) Make the object not subclassable.
2) Make the object subclassable and have WebIDL this value handling
perform some sort of "is initialized" checks.
3) Make the object subclassable and have specification prose for all
its methods/properties perform "is initialized" checks.
#1 is generally undersirable, #3 requires a level of understanding of ES
guts on the part of web spec authors that I suspect is not present and
might be hard to achieve (and in particular requires them to explicitly
opt in to making things subclassable).
Even #2 is a bit of a pain in terms of requiring extra work on every
single thing you do, which is not all that great from a performance
If we _can_ have a world in which web platform objects don't exist in
constructed-but-not-initialized states, I personally would much prefer
More information about the es-discuss