On 07/09/2010, at 11:39, Maciej Stachowiak wrote: > On Sep 6, 2010, at 6:01 PM, Brendan Eich wrote: >> On Sep 6, 2010, at 4:01 PM, Jürg Lehni wrote: >> >>> I agree it's a good name, but how about Object.isIdentical? Wouldn't that >>> follow existing naming conventions more closely? >> >> It would following the verg-object-noun-phrase convention, but we have more >> than one convention. >> >> Note how isNaN(x) and isFinite(x) are functions taking one parameter. >> Whereas Object.identical(a, b) tests whether two values *are* identical. >> Does "is" work still? Could we dodge the issue (as well as the implied >> preposition "to": isIdenticalTo) by using Jeff's "identical" suggestion? >> >> A pure OOP (single receiver) naming convention as in Smalltalk might favor a >> isIdenticalTo: b (if it didn't use an operator symbol, as IIRC Smalltalk >> did: ==), but Object.identical is really a function (static method of >> Object, simply to avoid name pollution in any other object). >> Object.identical(a, b) seems better to me than any longer name involving >> "is" and/or "To". >> >> For single-parameter tests, "is" or "has" followed by a NounPhrase is indeed >> the dominant naming convention. For a dyadic function to pair with >> Object.hashcode, Object.identical still seems best to me. The only other >> verb-free thought is to use the language in the ES5 spec (9.12) and call it >> Object.sameValue. > > You could make it Object.areIdentical(a, b), but I don't think that reads > very well.
Or even Object["==="](a,b) :-)) (I like Object.eq(), it makes the code shorter. Or even Object.isEq()) -- Jorge. _______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

