Set length property

Dean Landolt dean at deanlandolt.com
Tue Feb 14 13:10:56 PST 2012


On Tue, Feb 14, 2012 at 3:54 PM, Tab Atkins Jr. <jackalmage at gmail.com>wrote:

> On Sun, Feb 12, 2012 at 7:08 PM, Brendan Eich <brendan at mozilla.org> wrote:
> > See the thread containing Dean Landolt's dissent on 'length' being the
> best
> > name:
> >
> > https://mail.mozilla.org/pipermail/es-discuss/2011-November/018571.html
> >
> > The January 19 2012 meeting notes recorded here:
> >
> > https://mail.mozilla.org/pipermail/es-discuss/2012-January/019784.html
> >
> > include "At next meeting MarkM will present a tiny API proposal for maps
> and
> > sets."
>
> In today's practice, iterables are ducktyped by the presence of a
> "length" property.


IME they're ducktyped by the presence of forEach (this is far from
perfect). Length has nothing to do with iterability. What about generators?


>  I don't think an "[implication of] metric
> topology" matters to basically anyone who's not a huge language-design
> nerd. ^_^
>

I'm pretty sure math geeks would disagree.


> Additionally, having multiple names for the "size of" property makes
> it more difficult to learn, and more difficult to create generic code.
>

That's a bold assertion. I'd argue that having two different names for two
things that are *fundamentally different* is quite practical. It's
especially useful for writing generic code ;)

But more practically we *need *different names -- setting length has
certain expectations that wouldn't hold across all collections. Violating
these expectations would make things ever more difficult to learn...and
generic code even harder to write.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20120214/db1d252a/attachment-0001.html>


More information about the es-discuss mailing list