Speaking of SameValue,  it's unnecessary in many/most of the places it's used in the spec. Like in IsEquivelentDescriptor the only comparison that needs to use SameValue is comparing the [[Value]] field.<div class="gmail_extra">
<br><br><div class="gmail_quote">On Fri, Dec 14, 2012 at 2:02 PM, Allen Wirfs-Brock <span dir="ltr"><<a href="mailto:allen@wirfs-brock.com" target="_blank">allen@wirfs-brock.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word"><br><div><div class="im"><div>On Dec 14, 2012, at 10:45 AM, Domenic Denicola wrote:</div><br><blockquote type="cite"><div><blockquote type="cite">From: <a href="mailto:es-discuss-bounces@mozilla.org" target="_blank">es-discuss-bounces@mozilla.org</a> [<a href="mailto:es-discuss-bounces@mozilla.org" target="_blank">es-discuss-bounces@mozilla.org</a>] on behalf of Nathan Wall [<a href="mailto:nathan.wall@live.com" target="_blank">nathan.wall@live.com</a>]<br>
</blockquote><blockquote type="cite">Sent: Friday, December 14, 2012 13:34<br></blockquote><br><blockquote type="cite">On another note, I do sort of wonder why `Number.isNaN` is coming into the language now at the same time as the `is` operator and `Object.is`.  It seems teaching people (and getting them to remember long-term) the nuances of `isNaN` and `Number.isNaN` will be more difficult than just teaching people to use `x is NaN` in ES6 or `Object.is(x, NaN)` in an ES3/5 + ES6 shims environment.<br>
</blockquote><br>`is` operator is dead :( :( :(<br><br>(Someone want to find a link to the minutes that killed it? I keep having to correct people on this.)<br></div></blockquote><div><br></div></div><div>I may be wrong, but I don't think it was ever formally killed by TC39.   I was discussed here where the consensus was to kill it, but I don't recall an actual discussion at a TC39 meeting.  That's why I haven't deleted the is operator from the draft yet.   It's something I keep intending to verify at a meeting, but it keeps getting lost in the weeds.</div>
<div><br></div><div>BTW, I think there are probably other related issues that need to be discussed/resolved at that level.  For example, is SameValue really want we want for Map/Set equivalence (the -0 different from +0 issue), did we agree to parameterize the equivalance operator for Map/Set?,  and the question about the need for Number.isNaN if we have <a href="http://Object.is" target="_blank">Object.is</a> available.</div>
<span class="HOEnZb"><font color="#888888"><div><br></div><div><br></div><div>Allen</div></font></span><div class="im"><div><br></div><br><blockquote type="cite"><div><br><blockquote type="cite">There's not an `isNull` or `isUndefined`. The only reason `isNaN` was needed was because `===` didn't work with `NaN`, but `is` does.<br>
</blockquote><br>This is pretty reasonable, actually. The only argument I can see is that `array.filter(Number.isNaN)` is shorter than `array.filter(x => <a href="http://Object.is" target="_blank">Object.is</a>(x, NaN))`.<br>
_______________________________________________<br>es-discuss mailing list<br><a href="mailto:es-discuss@mozilla.org" target="_blank">es-discuss@mozilla.org</a><br><a href="https://mail.mozilla.org/listinfo/es-discuss" target="_blank">https://mail.mozilla.org/listinfo/es-discuss</a><br>
<br></div></blockquote></div></div><br></div><br>_______________________________________________<br>
es-discuss mailing list<br>
<a href="mailto:es-discuss@mozilla.org">es-discuss@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/es-discuss" target="_blank">https://mail.mozilla.org/listinfo/es-discuss</a><br>
<br></blockquote></div><br></div>