 ;;; I think there's a problem with the doc string:
 ;;; - What does it mean by "in a type-independent manner"?
 ;;;   - Is this defined in any authoritative place?
+;;;   - The doc string for `==` uses the phrase "type-independent" with a
+;;;     different (and intuitive) meaning.
 ;;; - I would expect e.g. (= 2 2M) => true, but that's not so.
 ;;;   - I'm not the only one:
 ;;;     - See http://dev.clojure.org/jira/browse/CLJ-1333.
+
+;;; Jeez, Clojure is poorly specified in places.
 
 ;;; /Clojure Programming/ p433-444 was helpful.
 

;;;;   Returns non-nil if nums all have the equivalent value (type-independent),
;;;;   otherwise false.

(fact (== 2 2N 2M 2.0M 2.0) => true) ; true even for inexact things

;;;; ___________________________________________________________________________

(fact (type (- 2N 1N)) => clojure.lang.BigInt)

(fact (type (/ 4N 2N)) => clojure.lang.BigInt)
(fact (type (/ 2N 4N)) => clojure.lang.Ratio)


;;;; ___________________________________________________________________________
;;;; ---- =-and-same-type ----

(defn =-and-same-type
  "Returns true iff (= x y) is true and x and y are of the same type."

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

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

