Brandon Benvie (2014-02-21T23:16:36.000Z)
On 2/21/2014 3:08 PM, Allen Wirfs-Brock wrote:
>
>> It might be worth coming up with good terms for "ES5-style optional
>> arguments" and "ES6-style optional arguments" which can be used
>> consistently in the spec. They can already be distinguished by
>> signature, ie:
>>
>> ```js
>> Array.prototype.reduce ( callbackfn [ , initialValue ] )
>> Array.prototype.splice (start, deleteCount [ , item1 [ , item2 [ , … 
>> ] ] ] )
>> ```
>>
>> versus
>>
>> ```js
>> Array.prototype.fill (value, start = 0, end = this.length)
>> Array.prototype.copyWithin (target, start, end = this.length)
>> ```
> Don't put too much weight into that. I've experiment with use the 
> latter style when define some new methods to see where it is helpfully 
> more descriptive. I just haven't bother to update all the legacy 
> methods to use that same style. At some point in the near future I 
> wall make a pass over the entire document and use consistent 
> conventions for all function signatres -- either the ES3/5 style or 
> the default value style. Given the amount of confusion the new style 
> seems to have case, I may well revert to using the ES3/5 style.
>

Isn't there a problem with the new contention because some steps are 
either implicit or aren't done? For example, `end = this.length` in the 
ES5 style would have explicit ToObject conversion on `this` before 
getting its length.
domenic at domenicdenicola.com (2014-02-24T21:36:27.024Z)
On 2/21/2014 3:08 PM, Allen Wirfs-Brock wrote:

> Don't put too much weight into that. I've experiment with use the 
> latter style when define some new methods to see where it is helpfully 
> more descriptive. I just haven't bother to update all the legacy 
> methods to use that same style. At some point in the near future I 
> wall make a pass over the entire document and use consistent 
> conventions for all function signatres -- either the ES3/5 style or 
> the default value style. Given the amount of confusion the new style 
> seems to have case, I may well revert to using the ES3/5 style.

Isn't there a problem with the new contention because some steps are 
either implicit or aren't done? For example, `end = this.length` in the 
ES5 style would have explicit ToObject conversion on `this` before 
getting its length.