On 17 January 2015 at 19:14, Allen Wirfs-Brock <[email protected]> wrote:
> On Jan 17, 2015, at 9:53 AM, Domenic Denicola wrote: > > On Jan 17, 2015, at 12:31, Allen Wirfs-Brock <[email protected]> > wrote: > >> > >> If the enclosing function is invoked as a call expression the value of > `new.target` is null > > > > Just curious, why null instead of undefined? > > null is used to indicate no [[Prototype]], so it seem to me to be a better > match for this situation. > Wouldn't the fact that null is a quasi-legal prototype strongly speak for using undefined here? Otherwise, it seems you couldn't distinguish Call invocations from Construct invocations with a prototype that has actually been set to null (which I suppose is legal?). (In terms of proper option/maybe types, this is yet another case of a None vs Some(None) distinction.) /Andreas
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

