• Unraveling the internals of Clojure's asynchronous programming engine

core.async: Deep Dive

// Engineering Meetups

Online / Zoom
18:00 CET (GMT+1)
December, 11
Free (but invaluable)
More about the talk
Clojure Engineer at Health Samurai
Andrew Listopadov
Intro by Speaker
An in‑depth look at the internals of clojure.core.async and what they mean for asynchronous programming in Clojure. We will go past the public API and examine what really happens under the hood when you spin up asynchronous processes and pass messages over channels.​​

What this talk covers:
  • The internal structure of channels, queues, timers, and event loops, and how they work together to drive asynchronous workflows.​
  • How “virtual threads” are compiled and scheduled, and why this model fits Clojure so well.​​
  • How the macro system is used to implement core.async semantics and transform ordinary Clojure code into state machines.​​

Who should attend
  • Programming language designers and implementers exploring ways to add asynchronous execution to their language.​​
  • Clojure developers who use core.async today or are evaluating it for production systems.​
  • Engineers interested in how asynchronous processes and message‑passing channels really work beneath the abstractions.​

After this talk, you will:
  • Clearly understand the difference between asynchrony and parallelism, and when each model is appropriate.​
  • Have a mental model of the internal mechanisms of clojure.core.async and be able to judge where this approach fits their own projects.​
  • Gain a deeper understanding of how asynchronous “threads” and channels are implemented, helping them design more robust concurrent systems.
Reasons to join
  • A strong community. Most participants are experienced polyglot engineers who are ready to share their expertise and discuss ideas.

  • Practical skills. You’ll be able to apply the approaches and tools in practice.

  • Broader perspective. We talk not only about Clojure but also about implementations in other technologies.

  • Online. You don’t need to go anywhere to take part. Join from anywhere!

  • A cozy atmosphere. We don’t like constraints or formalities, so feel free to be yourself at our events.
— Will it be interesting if I already know the topic well?
Of course! We’ll be happy if you join the discussion after the talk and share your experience. Your perspective will help reveal the topic more fully for the participants.


— If I don’t understand the topic of the talk at all, will it still be clear to me?
Absolutely! Usually, at the beginning of the talk, the speaker introduces the participants to the problem area. Even if something remains unclear to you, you can freely ask the speaker your question — after all, there are no stupid questions.
Registration is required
December, 11
Wednesday, 18:00 CET (GMT+1)
Online
Fill out the form and get an invitation!
Do you want to receive notifications about upcoming meetups?
Made on
Tilda