This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-09-22
Channels
- # babashka (106)
- # beginners (29)
- # biff (29)
- # calva (9)
- # cider (6)
- # clj-kondo (24)
- # clojure (40)
- # clojure-europe (94)
- # clojure-japan (1)
- # clojure-nl (1)
- # clojure-norway (45)
- # clojure-uk (13)
- # clojuredesign-podcast (5)
- # clojurescript (12)
- # clr (4)
- # community-development (2)
- # conjure (13)
- # cryogen (4)
- # cursive (4)
- # deps-new (1)
- # fulcro (18)
- # hugsql (2)
- # hyperfiddle (67)
- # jobs (1)
- # malli (47)
- # meander (2)
- # missionary (34)
- # off-topic (1)
- # podcasts-discuss (1)
- # polylith (24)
- # reagent (19)
- # reitit (9)
- # sci (7)
- # shadow-cljs (3)
- # testing (28)
- # tools-deps (1)
- # xtdb (9)
New topic draft, please review - synchronizers https://gorgeous-sorbet-a5a2bf.netlify.app/synchronizers
please can we get the github markdown .css on the page, mobile layout is unworkable
also the comments need to not exceed 80 char width (iirc, that might not be the magic constant i need to check where we ended up on the electric tutorial)
view it on your mobile
I DM'ed a screenshot
I'd like a sentence "A missionary coroutine is .... for example ...."
I think you mean the three process macros declare missionary coroutines but I'm uncertain if that's what you mean and I had to think about it
For the three parking/forking operators, I'd like to see simple examples of each of them that demonstrates the difference between ?< and ?> as well as their difference in a few words
> Multiple threads can successively take ownership of evaluation ... Example : the REPL thread starts the process, a cpu pooled thread finishes it. This is surprising, why is it so?
> This is surprising, why is it so? the answer probably deserves another topic, but I'm interested to know why you would expect a coroutine execution to be bound to a single thread
It didn't occur to me to even think about that and the document didn't explain it
We experienced some confusion in 2020–2022 when a m/ap with say a println and then a println after a sleep
caused stdout to different places, because *out*
was not redirected to the REPL in the threadpool, or something
I also don't understand the cost if any of moving data between threads in java
i imagined m/via gated access to thread pool for heavy things, i didn’t expect the coroutine DSL to even benefit from more threads, i imagined all coordination / control flow would run in main thread like on JS platform. Does this matter in practice? (I think it probably does as I recall seeing electric programs where the electric overhead is the dominant cost) What is the key benefit? Can coroutines evaluate in parallel? Is this even a coherent question? idk
not sure what you mean enabling dark mode in my browser, but I see it dark in FF, FF private window, chromium, google chrome (the last 2 with stock config)
Missionary one-liner: higher order reactive concurrency combinators
an example being (defn mix [& flows] (m/ap (m/?> (m/?> (count flows) (m/seed flows)))))
@UK0810AQ2 is this a fair behavior to you ?
(m/? (m/reduce conj
(mix (m/seed [:a :b :c :d])
(m/seed [1 2 3 4]))))
=> [1 :a 2 :b 3 :c 4 :d]