On Feb 20, 2014, at 8:36 AM, Brendan Eich wrote: > On Feb 20, 2014, at 8:16 AM, Allen Wirfs-Brock <[email protected]> wrote: > >> Nope, it means that the length of the argument list is less than two, hence >> an argument corresponding to 'deleteCount' was not passed. >> >> http://people.mozilla.org/~jorendorff/es6-draft.html#sec-ecmascript-standard-built-in-objects >> (para 4) says: "Unless otherwise specified in the description of a >> particular function, if a built-in function or constructor is given fewer >> arguments than the function is specified to require, the function or >> constructor shall behave exactly as if it had been given sufficient >> additional arguments, each such argument being the undefined value." > > Note lack of the words "not" and "present" above, > >> So, "is not present" is how handling of missing arguments is "otherwise >> specified". >> >> If the algorithm need to simply test for an explicitly or implicitly passed >> undefined, it would simply say "If argument is undefined, then ..." >> >> I always thought "not present" was sufficiently descriptive, in combination >> with the missing args default to undefined rule, that it didn't need further >> definition. > > Why? Those words do not occur in the rule's definition.
That's one of the strengths/weaknesses of pseudo code. It's not manageable to formally define phrase so you depend upon commonly understood the natural language meaning for a lot of things. But, I rule of thumb is that if one person is vocal about being confused then many other also probably are. Boris should file a bug. Allen
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

