July 20–24, 2015
Portland, OR

Solving the concurrency problem with Clojure

Carin Meier (Cognitect)
1:30pm–5:00pm Tuesday, 07/21/2015
Solve D139/140
Average rating: ***..
(3.00, 2 ratings)

Prerequisite Knowledge

Experience in programming with another language.

Materials or downloads needed in advance

Laptop with Git installed. Leiningen http://leiningen.org/ Editor of your choice or Light Table http://lighttable.com/


Clojure is an elegant, powerful language. With functional programming style and immutable data, we can solve the problem of concurrency that is very difficult to deal with in other languages.

We will start with a quick, gentle introduction to get your feet wet using Clojure as a programming language. Then, we will look some language features that help you to deal with concurrency. After that, we will take a close look at the core.async library which uses channels for asynchronous programming and communication.

Finally, we will build a simple web application together that will use the power of Clojure’s core.async library to solve the concurrency problem not only on the server, but also in the browser with ClojureScript.

Photo of Carin Meier

Carin Meier


Carin Meier started off as a professional ballet dancer, studied physics in college, and has been developing software for both the enterprise and entrepreneur ever since. She has a strong background in Ruby and Clojure. Her passions led her to the intersection of the physical and digital world, combining hardware and software, where she has helped clients develop home automation systems as well as written a control library for the Parrot AR Drone in Clojure. She is highly involved in the community and spoken at many conferences, including keynoting at OSCON and Strange Loop. She helps lead the Cincinnati Functional Programmers and is the author of Living Clojure.