ES accessor usage guidelines (Was: Map/Set.prototype.size)

Mark S. Miller erights at google.com
Mon Oct 15 11:31:14 PDT 2012


On Mon, Oct 15, 2012 at 9:17 AM, Allen Wirfs-Brock <allen at wirfs-brock.com>wrote:

>
> On Oct 12, 2012, at 2:16 PM, David Herman wrote:
>
> > On Oct 12, 2012, at 12:14 PM, Erik Arvidsson <erik.arvidsson at gmail.com>
> wrote:
> >
> >> On Fri, Oct 12, 2012 at 11:16 AM, David Bruant <bruant.d at gmail.com>
> wrote:
> >>> Firefox has implement a Map/Set.prototype.size *method* to query the
> number
> >>> of mapping/elements.
> >>> It's not in the strawman. It appears in the latest draft, though
> weirdly
> >>> enough Map.prototype.size is a function with an unused argument.
> >>> What about making it an getter instead of a function? I guess we also
> don't
> >>> need the extra parens to request for Map#keys, Map#values, Map#items.
> >>
> >> For keys, values and items I think they are cleaner as methods since
> >> they return a new iterator every time.
> >
> > Agreed.
> >
> > Dave
> >
>
> I buy making Map/Set size an accessor.  This will be the first such
> property in the ES specification and it would be good to have some
> guidelines to help us make consistent decisions about using accessors in
> the future.
>

Nit: the poisoned "caller" "callee" and "arguments" properties on
non-strict functions and arguments are specified as accessors.



>
> Erik and Tab floated a couple reasons why items/keys/values should not be
> accessors.
>
> Does anybody want to  take a crack at writing up a complete set of design
> rules for when a built-in property should/shouldn't be defined as an
> accessor?
>
> Allen
>
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>



-- 
    Cheers,
    --MarkM
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20121015/2c23cf56/attachment-0001.html>


More information about the es-discuss mailing list