anchor.diff:  user> s2
   #{2.0 1.0 ##NaN}
   user> (= s1 s2)
  -false
  -user> (= [1 ##NaN] [1 ##NaN])
  -false
  +true
   ----
   
   Java has a special case in its `equals` method for floating point
  
positive.code: 
  This document discusses the concept of equality in Clojure, including the functions `=`, `==`, and `identical?`, and how they differ from Java's `equals` method.  It also has some description of Clojure's `hash`, and how it differs from Java's `hashCode`. The beginning of this guide provides a summary of the most important information for quick reference followed by a much more extensive review of the details.
  
  _Information in this guide describes the behavior of Clojure 1.9.0 unless noted otherwise._
  
  == Summary
  
  
negative.code: #{2.0 1.0 ##NaN}    ; ##NaN is still in the result!
  ----
  
  In many cases, collections that contain `pass:[##NaN]` will not be `=` to another collection, even if they look like they should be, because `pass:[(= ##NaN ##NaN)]` is `false`:
  
  [source,clojure]
  ----
  user> (= [1 ##NaN] [1 ##NaN])
  false
  ----
  
  Oddly enough, there are exceptions where collections contain `pass:[##NaN]` that look like they should be `=`, and they are, because `pass:[(identical? ##NaN ##NaN)]` is `true`:
  
  [source,clojure]
  ----
  