Most ways of checking = of ##NaN to another ##NaN object/primitive return false, which while surprising to many people when they first encounter the behavior, is actually a somewhat reasonable thing to do according to the IEEE 754 specification. In most cases Clojure does this, e.g.:
While most Clojure expressions satisfy the proposed property below, there are a few variations that return results that violate it:
Property 1: Calls to Clojure `=` or `==` involving at least one NaN
return false, whether the call is inlined or not. Calls to Clojure
`not=` involving at least one NaN return true.
Examples of expressions that violate it: