Confirmed users
446
edits
(change to part template) |
(Sparse elements) |
||
Line 73: | Line 73: | ||
# Make the <code>baseops::*</code> methods take <code>Property</code> handles - 1 week? | # Make the <code>baseops::*</code> methods take <code>Property</code> handles - 1 week? | ||
#* Perhaps the ugliest part of all this, because of the significant complexity amongst all these methods in their current forms. | #* Perhaps the ugliest part of all this, because of the significant complexity amongst all these methods in their current forms. | ||
== Sparse elements == | |||
Properties already have a storage representation. Elements when split out will have one when they're dense, but they need one for when they're sparse. | |||
v8 uses the exact same representation for sparse elements as for properties -- just a difference in a template parameter. Possibly we could also do this. Unfortunately our shape representation is quite complex, and its internals are intricately tied to the rest of the object representation, to type inference, and elsewhere. Possibly this could be disentangled. I'm not sure how long it would take. If we didn't disentangle, and perhaps instead just used (say) a <code>HashMap</code>, it would still take a bit of time. It might take less time that way. | |||
I don't have any good answers here, nor do I have much idea how long this should take, either way. | |||
'''Time''': unknown | |||
# step 1 - time | |||
#* ... | |||
# step 2 - time | |||
#* ... | |||
== Copy/Paste Step (don't edit!) == | == Copy/Paste Step (don't edit!) == |