             (merge
               {:ns         @current-ns
                :load       load
-               :eval       cljs/js-eval
                :source-map false
                :verbose    (:verbose @app-env)}
               (when expression?

                  (try (cljs/eval st
                                  expr
                                  {:ns   @current-ns
                                   :context :expr
                                   :eval cljs/js-eval}
                                  print-error)
                       (catch js/Error e (prn :caught e)))))
          (prn nil))

  [source expression? print-nil-expression?]
  (binding [ana/*cljs-ns* @current-ns
            *ns* (create-ns @current-ns)
            r/*data-readers* tags/*cljs-data-readers*
            cljs.js/*eval-fn* cljs/js-eval]
    (let [expression-form (and expression? (repl-read-string source))]
      (if (repl-special? expression-form)
        (let [env (assoc (ana/empty-env) :context :expr
