   (-seq [coll] coll)
 
   ICounted
-  (-count [coll] count))
+  (-count [coll] count)
+
+  IPrintable
+  (-pr-seq [coll opts] (pr-sequential pr-seq "(" " " ")" opts coll)))
 
 (deftype EmptyList [meta]
   IWithMeta

; (iempty [coll] List.EMPTY)

  ISeqable
  (-seq [coll] coll))

(extend-protocol ICounted
  goog.global.String


(defprotocol ISeqable
  (-seq [o]))

(defprotocol IPrintable
  (-pr-seq [o opts]))

(defn js-obj []
  (js* "return {}"))
