 ;   You must not remove this notice, or any other, from this software.
 
 (ns cljs.reader
-  (:require [goog.string :as gstring
-             goog.string.StringBuffer :as gsb]))
+  (:require [goog.string :as gstring]))
 
 (defprotocol PushbackReader
   (read-char [reader] "Returns the next char from the Reader,

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(defn macro-terminating? [ch]
  (and (not= ch "#") (not= ch "\'") (contains? macros ch)))

(defn read-token
  [rdr initch]
  (loop [sb (gsb/StringBuffer. initch)
         ch (read-char rdr)]
    (if (or (nil? ch)
            (whitespace? ch)
            (macro-terminating? ch))
      (do (unread rdr ch) (.toString gsb))
      (recur (do (.append sb ch) sb) (read-char rdr)))))

(defn- skip-line


(defn read-string
  [reader _]
  (loop [buffer (gstring/StringBuffer.)
         ch (read-char reader)]
    (cond
     (nil? ch) (throw "EOF while reading string")
