   (-pop [coll] #_(throw "Can't pop empty list"))
 
   ICollection
-  (-conj [coll o] (new List meta o nil 1))
+  (-conj [coll o] (List. meta o nil 1))
 
 ; IEmptyableCollection
 ; (iempty [coll] coll)


(deftype Cons [meta first rest]
  IWithMeta
  (-with-meta [coll meta] (new Cons meta first rest))

  IMeta
  (-meta [coll] meta)


(deftype LazySeq [meta realized x]
  IWithMeta
  (-with-meta [coll meta] (LazySeq. meta realized x))

  IMeta
  (-meta [coll] meta)
