This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-03-22
Channels
- # alda (2)
- # announcements (1)
- # babashka (32)
- # beginners (67)
- # calva (1)
- # cider (19)
- # clerk (11)
- # clj-commons (35)
- # clj-kondo (7)
- # cljsrn (2)
- # clojure (35)
- # clojure-europe (86)
- # clojure-nl (5)
- # clojure-norway (5)
- # clojure-russia (6)
- # clojurescript (16)
- # clr (21)
- # conjure (1)
- # core-async (10)
- # cryogen (1)
- # cursive (12)
- # data-science (1)
- # emacs (29)
- # events (4)
- # figwheel-main (2)
- # graalvm (9)
- # gratitude (7)
- # honeysql (4)
- # hugsql (3)
- # hyperfiddle (23)
- # jobs (1)
- # jobs-discuss (4)
- # joyride (9)
- # malli (2)
- # off-topic (81)
- # portal (7)
- # reagent (19)
- # reitit (1)
- # releases (4)
- # shadow-cljs (121)
- # xtdb (3)
Hey team, noob question. I am using core-async, and wanted to propagate errors. The solution I've found so far is using <?
and go-try
The issue though, is that is kid of "colors" every function I use over a channel. For example:
(defn uh-oh-go-try
[]
(go-try
(throw (Exception. "uh-oh"))))
(<?? (a/into [] (a/merge [(uh-oh-go-try) (uh-oh-go-try)])))
;; will not throw
I could make wrappers, like into?, which checks for exceptions, but I wonder if there's a better way.Hey @UK0810AQ2, have you written every
and some
in the context of core-async by any chance? I'd be curious to take a peak at an example