      (prim-seq array i)))
 
 (extend-type array
-  ISeqable
-  (-seq [array] (array-seq array 0))
-
   ICounted
   (-count [a] (alength a))
 

  Strings."
  [coll]
  (when-not (nil? coll)
    (if (satisfies? ASeq coll)
      coll
      (-seq coll))))

(defn first
  "Returns the first item in the collection. Calls seq on its

(extend-type string
  IHash
  (-hash [o] (goog.string/hashCode o))

  ICounted
  (-count [s] (alength s))
