void 0 is identical to undefined, I perfectly know it, and I have no idea who decided that undefined === absent ..
``` alert(absent); // this is error alert(undefined); // this is undefined var undefined; ``` I think ignoring undefined, if that's what has been decided, is a mistake. As easy as that. On Sun, Nov 10, 2013 at 2:20 PM, Oliver Hunt <[email protected]> wrote: > > On Nov 10, 2013, at 2:12 PM, Andrea Giammarchi < > [email protected]> wrote: > > I think I've completely missed the `undefined === absent` conversation ... > so if I have an object, and `obj.key = void 0` why `key` would be > considered absent, exactly? `undefined` is a very well described "value", > passing stuff around thinking has a value but getting ignored by signatures > and who knows what else is a door to hell in the real world. > > > void <expression> > > simply evaluates expression and sets the return continuation value to > undefined. > > void 0 is identical to |undefined| unless a containing scope has declared > a variable named “undefined” locally. void … does not result in a special > value. > > —Oliver > > > my 2 cents > > > On Sun, Nov 10, 2013 at 1:49 PM, Mark S. Miller <[email protected]>wrote: > >> On Sun, Nov 10, 2013 at 1:30 PM, K. Gadd <[email protected]> wrote: >> >>> JSIL and embind both need arguments.length for efficient method call >>> dispatch when dealing with overloaded functions. Is it your intent that all >>> such scenarios must now pay the cost of creating an array (to hold the rest >>> arguments) and then destructuring it, for every call? At present it's >>> possible to avoid this overhead in V8 and SpiderMonkey by using >>> arguments.length + arguments[n] or by using arguments.length + patterned >>> argument names. >>> >> >> Hi Katelyn, >> >> No one is taking arguments away. Perhaps we would if we could but we >> can't. So as I said just now to Allen, if you really need to do this, go >> ahead and use arguments.length. >> >> But do you really need to do this? Assuming for a moment that we were all >> agreed that the best practice is to treat absence the same as undefined, >> why not go with the best practice and be done? >> >> >> >>> >>> >>> On Sun, Nov 10, 2013 at 1:24 PM, David Bruant <[email protected]>wrote: >>> >>>> Le 10/11/2013 22:19, Brendan Eich a écrit : >>>> >>>> On Nov 10, 2013, at 9:12 PM, Andrea Giammarchi < >>>>>> [email protected]> wrote: >>>>>> >>>>>> Not sure why this is so needed though. >>>>>> >>>>> Allen's posts make the case: webidl and varargs-style functions. Not >>>>> all legacy. >>>>> >>>> WebIDL creates spec, not code. The language syntax doesn't need to >>>> evolve for that. Allen showed that rest params+destructuring allows >>>> self-hosting without |arguments| >>>> Varargs functions have rest parameters. >>>> >>>> David >>>> >>>> _______________________________________________ >>>> es-discuss mailing list >>>> [email protected] >>>> https://mail.mozilla.org/listinfo/es-discuss >>>> >>> >>> >>> _______________________________________________ >>> es-discuss mailing list >>> [email protected] >>> https://mail.mozilla.org/listinfo/es-discuss >>> >>> >> >> >> -- >> Cheers, >> --MarkM >> >> _______________________________________________ >> es-discuss mailing list >> [email protected] >> https://mail.mozilla.org/listinfo/es-discuss >> >> > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss > > >
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

