- From: <bugzilla@jessica.w3.org>
- Date: Wed, 27 Aug 2014 20:23:11 +0000
- To: public-script-coord@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=26183 --- Comment #3 from Domenic Denicola <domenic@domenicdenicola.com> --- ### Definitely do this ArrayLikeIterable => keys(), values(), entries(), [Symbol.iterator](), forEach, all === to their Array.prototype counterparts. (Assumes the host interface defines a .length property) Should require nothing from the author besides being zero-indexed and having a length. As we get proper Array subclasses, this should disappear; it's mostly for slapping onto older interfaces. ### Needs some thought MapLikeIterable => keys(), values(), entries(), [Symbol.iterator](), forEach, with key-value semantics. Spec authors need to define some kind of abstract ordered list of key-value pairs these can work off of. The ES6 spec formalizes this as an ECMASpeak List of ECMASpeak Records {[[key]], [[value]]}, with the additional wrinkle that it represents deletions as setting the key to `empty` in sans-serif font. That's kind of lame, but we do need spec authors to be rigorous somehow. I think spec authors should separately define size, if they want it? Or we could assume they want it, and if we find a case where they don't, we can define MapLikeIterableNoSize ### Unsure SetLikeIterable => like MapLikeIterable, but with the (admittedly weird) set semantics where keys and values are the same, and entries are just [v, v] arrays. Do we have any use case for this? -- You are receiving this mail because: You are on the CC list for the bug.
Received on Wednesday, 27 August 2014 20:23:13 UTC