<br><br><div class="gmail_quote">On Thu, Nov 17, 2011 at 1:16 PM, Waldemar Horwat <span dir="ltr"><<a href="mailto:waldemar@google.com">waldemar@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<div class="im">On Thu, Nov 17, 2011 at 3:49 AM, Axel Rauschmayer <<a href="mailto:axel@rauschma.de">axel@rauschma.de</a>> wrote:<br>
><br>
> Given that Array already uses `length`, it seems like the obvious choice.<br>
<br>
</div>"length" is my choice as well, for the same reason. It's not writable<br>
in Maps and Sets, so the concerns about the semantics of writing it<br>
don't apply.<br></blockquote><div><br></div><div><br></div><div>Who can resist such a juicy bikeshed...</div><div><br></div><div>Just wanted to jump in and say non-writable length is consistent with String behavior as well, but David makes a good point about length implying metric topology. David's suggestion of `count` is nice. ISTM what we're talking about is `cardinality`, but no need to get too silly w/ precision. Though `size` is just fine with me, and has plenty of prior art. </div>

<div><br></div><div>Whatever name is chosen I'd prefer it be something other than `length`, and for it to also exist on Array.prototype as a read-only property returning this.length. This way this new property becomes the new `length` for every "compound" type, whether it be an object, array, string, map, set, etc. And `length` would remain for all sequence (numerically-indexed) types.</div>

</div>