                      (recur))
 
                    :else
-                   (do (eval-and-print repl-env env form opts)
-                       (recur)))))))
+                   (let [value (eval repl-env env form opts)]
+                     (print value)
+                     (recur)))))))
          (-tear-down repl-env))))))
 
 (defn repl

                                          (ana/get-namespace ana/*cljs-ns*)))]
                              (reader/read rdr nil read-error))
                            (catch Exception e
                              (println (.getMessage e))
                              read-error))]
                 ;; TODO: need to catch errors here too - David
                 (cond

             (when-let [src (:watch opts)]
               (future
                 (let [log-file (io/file (util/output-directory opts) "watch.log")]
                   (print "Watch compilation log available at:" (str log-file))
                   (binding [*out* (FileWriter. log-file)]
                     (cljsc/watch src (dissoc opts :watch))))))
             (loop []
