In Clojure, everything is immutable! So how can Clojure be used to build stateful applications? That’s where Atom enter the picture. In simple words, atom in Clojure is a built-in mechanism to manage application state. Atoms are mutable, and can be updated as many times as you want. Let’s look at a practical example to understand the usage and implications of atom . We begin by looking up the documentation of atom in repl.