The chapter 10 video mentions in passing that
alts! is a distinctive feature of core.async.
I’d love just a wee bit more color on this. How distinctive? Is it distinctive of core.async as opposed to Java’s concurrency APIs? Or also as opposed to other implementations of CSP-style concurrency, like in golang?
In general I’m curious to understand which aspects of core.async are an expression in Clojure of well-worn ideas, and which parts are more particular to Clojure.