   "Assumes y is sequential. Returns true if x equals y, otherwise
   returns false."
   [x y]
-  (truth_
+  (boolean
     (when (sequential? y)
       (if (and (counted? x) (counted? y))
         (when (= (count x) (count y))


(defn instance? [t o]
  (js* "return ~{o} instanceof ~{t};"))

(defn string? [x]
  (and (goog/isString x)

  "Assumes y is a map. Returns true if x equals y, otherwise returns
  false."
  [x y]
  (boolean
    (when (map? y)
      ; assume all maps are counted
      (when (= (count x) (count y))
