core.async Channels and Go Blocks
Beyond refs and atoms, core.async brings CSP-style concurrency to Clojure. This lesson teaches channels, go blocks, and coordinating asynchronous work with communicating processes.
Why core.async
Atoms and refs manage shared state. core.async manages communication between independent processes using channels, inspired by CSP.
Requiring the Library
Pull in the core functions you will use.
(require '[clojure.core.async :as a
:refer [chan go >! <! <!! >!!]])All lessons in this course
- Refs, Agents, Atoms for State
- Software Transactional Memory (STM)
- Promises, Futures & Async Operations
- core.async Channels and Go Blocks