 
 (defn read-delimited-list
   [delim rdr recursive?]
-  (loop [a ()]
+  (loop [a []]
     (let [ch (read-past whitespace? rdr)]
       (when-not ch (throw "EOF"))
       (if (= delim ch)
         a
-        (if-let [macrofn (get rmacros ch)]
+        (if-let [macrofn (get dispatch-macros ch)]
           (let [mret (macrofn rdr ch)]
             (recur (if (= mret rdr) a (conj a mret))))
           (do

  [ch]
  (= \; ch))

(defn- meta-prefix?
  "Checks whether the character begins metadata"
  [ch]
  (= \^ ch))

(defn- number-literal?
  "Checks whether the reader is at the start of a number literal"
  [reader ch]

  "Checks whether the character starts a string"
  [ch])

(declare read macros dispatch-macros)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; read helpers
