This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-02-05
Channels
- # announcements (1)
- # aws (6)
- # babashka (8)
- # beginners (22)
- # cider (12)
- # clj-kondo (1)
- # cljdoc (15)
- # clojure (109)
- # clojure-dev (6)
- # clojure-europe (40)
- # clojure-losangeles (5)
- # clojure-uk (1)
- # clojurescript (28)
- # data-oriented-programming (3)
- # datahike (9)
- # datalevin (9)
- # holy-lambda (2)
- # juxt (5)
- # lsp (4)
- # malli (2)
- # meander (1)
- # missionary (5)
- # nextjournal (3)
- # off-topic (17)
- # reagent (1)
- # reitit (8)
- # releases (1)
- # sci (16)
- # shadow-cljs (7)
- # sql (9)
- # tools-deps (9)
- # transit (1)
(def !input (atom 1))
(def main (mi/reactor
(let [>x (mi/signal! (mi/watch !input)) ; continuous signal reflecting atom state
>y (mi/signal! (mi/latest + >x >x))] ; derived computation, diamond shape
(mi/stream! (mi/ap (println (mi/?< >y))))))) ; discrete effect performed on successive values
(def dispose! (main #(prn ::success %) #(prn ::crash %)))
; 2
(swap! !input inc)
; 4
(dispose!)
on cljs
dispose!
dosen't print anythingcheck various consoles, async prints may not be caught and redirected to the nREPL