 ;;;; ---- The thing that is, in my opinion, contrary to the doc string ----
 
 (fact "`=` return false for comparisons of equivalent numbers of different categories"
-  ;; From /Clojure Programming/
-  (fact (= 1 1.0) => false)
-  (fact (= 1N 1M) => false)
+  ;; From /Clojure Programming/ with some changes and additions
+  (fact (= 2 2.0)    => false)
+  (fact (= 2 2M)     => false)
+  (fact (= 2N 2M)    => false)
   (fact (= 1.25 5/4) => false))
+
+;;; From /Clojure Programming/:
+;;;   Clojure’s = could obviate these type differences (as Ruby and Python do),
+;;;   but doing so would impose some runtime cost that would be unappreciated by
+;;;   those who need to maximize the performance of programs that work with
+;;;   homogeneous numeric data.
 
 ;;;; ---------------------------------------------------------------------------
 ;;;; ---- My playing ----

(fact (type 2.0)   => Double)
(fact (type 2.0)   => java.lang.Double)

(fact (type 4/2) => Long)

;;; Some non-Clojure Java numeric types


;;;   - arbitrary-precision decimals (e.g. 2M, 2.0M)
;;;   - limited-precision decimals (e.g. 2.0, (Float. 2.0))

;;;; ---------------------------------------------------------------------------
;;;; ---- Things that are fine ----

