                                   (throw e)))))]
                 (if (and (not (symbol? input)) (empty? v))
                   (do
-                    (skip-if-eol *in*)
+                    (main/skip-if-eol *in*)
                     input)
-                  (if (= :line-start (skip-whitespace *in*))
+                  (if (= :line-start (main/skip-whitespace *in*))
                     (if (and (symbol? input)
                              (some #(= (keyword input) %) quit-commands))
                       request-exit

  [user-options]
   (let [options-with-args-info (add-args-info user-options)]
    `(let [options# (get-cli-opts ~options-with-args-info)]
       (repl
         :eval ((options# :eval-factory) options#)
         :print (options# :print)
         :prompt (options# :prompt-fn)

    (fn [request-prompt request-exit]
      (try
        (or ({:line-start request-prompt :stream-end request-exit}
             (main/skip-whitespace *in*))
            (loop [v []]
              (let [input (try
                            (read {:read-cond :allow} *in*)
