Thanks for investigating. It seems that inside evaluate-form that map returned by -evaluate, but then the :value's value of that map is returned to the eval-and-print function where that is "read-string" again…
Anyway, got it to work now - thanks. On Sep 19, 2012, at 6:47 AM, Hubert Iwaniuk <neo...@kungfoo.pl> wrote: > If you look at cljs counterpart of it you'll see that maps are send as > responses, that is why read-string is used. > > HTH > > Frank Siebenlist wrote: >> >> Sorry - I've answered part of my own Q by reading the read-string doc… >> nothing is eval'ed of the result - just the first "object" is read. >> >> Still unclear why read-string is used - why would a second "object" be >> discarded? Like: >> >> user=> (read-string "(+ 1 2) (- 3 2)") >> (+ 1 2) >> >> Still confused... >> >> -FS. >> >> >> On Sep 18, 2012, at 11:51 PM, Frank Siebenlist<frank.siebenl...@gmail.com> >> wrote: >> >>> >>> I'm trying to understand the clojurescript-code of the repl functionality, >>> and I'm confused… >>> >>> The following cljs.repl/eval-and-print function takes a cljs-form, compiles >>> it, sends it to the browser as javascript, and then receives the result, >>> and the… try's to use "read-string" on that return value: >>> >>> --- >>> (defn- eval-and-print [repl-env env form] >>> (let [ret (evaluate-form repl-env >>> (assoc env :ns (ana/get-namespace ana/*cljs-ns*)) >>> "<cljs repl>" >>> form >>> (wrap-fn form))] >>> (try (prn (read-string ret)) >>> (catch Exception e >>> (if (string? ret) >>> (println ret) >>> (prn nil)))))) >>> --- >>> >>> Why does it call read-string on the returned result from the js-eval? >>> >>> The eval'ed compiled javascript could result in a clojure-form that would >>> be eval'ed on the return (???), and the result of the latter is then >>> printed. >>> >>> Confusingly yours, FrankS. >>> >> > > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with your > first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en