I tackle this issue by replacing go call by a custom macro gotry that will catch exception inside the go block
(defmacro deftry [func-name args & body] (let [body-with-go-try (clojure.walk/prewalk-replace '{go gotry} body)] `(defn ~func-name ~args (try ~@body-with-go-try (catch js/Object e# (notify-error e#)))))) (defmacro gotry [& body] `(go (try ~@body (catch js/Object e# (notify-error e#))))) What do you think about that ? Le dimanche 24 août 2014 10:30:23 UTC+3, Yehonathan Sharvit a écrit : > I would like to catch exceptions that occur inside a go block. I need to > catch the exceptions from outside the go block. > > I tried to write this piece of code but it didn't work. The exception was not > caught. > > (try > (go > (throw (js/Error."My Exception in go block"))) > (catch js/Object e > (println "exception caught: " e))) > > > Any idea? -- Note that posts from new members are moderated - please be patient with your first post. --- You received this message because you are subscribed to the Google Groups "ClojureScript" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojurescript+unsubscr...@googlegroups.com. To post to this group, send email to clojurescript@googlegroups.com. Visit this group at http://groups.google.com/group/clojurescript.