'@std' and non-method versions of various methods?

David Herman dherman at mozilla.com
Wed Dec 26 14:07:54 PST 2012

On Dec 24, 2012, at 1:21 PM, Brandon Benvie <brandon at brandonbenvie.com> wrote:

> While seemingly out of date (though looks to have been updated recently), the modules_standard proposal is still listed as ostensibly part of harmony (ES6). For the most part it simply lists all the standard builtins from chapter 15 but there's a few new things in here. What caught my eye a while back specifically was the non-method versions of call, bind, and apply as part of '@function'. While these three are particularly useful as non-method versions, I think the usefulness clearly extends beyond this small selection to at least the most commonly used ones (I'm thinking of Array.prototype.push, Object.prototype.toString, etc.) that aren't covered by other new ES6 functionality (like hasOwnProperty is covered by '@reflect').

Yeah, this set was an initial stab by me, but needs some polish as well as to be unified/aligned with @reflect.

> In particular, non-method versions of all the Map, Set, and WeakMap methods, along with most of Array methods, would be very useful. A non "method" version of the constructor itself, like mapCreate(object, iterable), would be useful. The collection methods are similar to the Array methods. Not because they work generically like the Array methods do, but because any object can (given proper initialization) be the target of these methods.

That may be, and thanks for the feedback. Since this area is going to be like crack for bikeshedders, I think I'll leave it there.


More information about the es-discuss mailing list