(more) this discussion https://github.com/JuliaLang/julia/issues/8343
On Friday, December 18, 2015 at 9:23:48 AM UTC-5, Jeffrey Sarnoff wrote: > > here is the relevant discussion: > https://github.com/JuliaLang/julia/issues/5314 > > On Friday, December 18, 2015 at 8:09:10 AM UTC-5, Tamas Papp wrote: >> >> For example, >> >> julia> isequal(NaN,NaN16) >> true >> >> julia> isequal(NaN,NaN32) >> true >> >> This is of course documented in the manual, what I would like to >> understand is the motivation for this design decision. Some languages >> have a progression of equality predicates --- eg Common Lisp has EQ, >> EQL, EQUAL, and EQUALP, each more permissive than the next one. But == >> and isequal do not nest, since NaN's are of course not == to anything >> under IEEE, even themselves. >> >> Before reading about this in the manual, I thought of isequal as object >> identity ("A and B are equal when they cannot be distinguished"), but >> apparently that's the wrong concept. >> >> Just curious -- there must be a good reason and I would like to know it. >> >> Best, >> >> Tamas >> >
