I would assume that it manages it the same way every other impure functional language manages side effects. I assume common lisp would be quite similar to ML, Ocaml, and Scheme in the way it manages side effects. Those languages don't make side effects part of their type system and more or less leave it up to the programmer to not make mistakes. Note that I've never done anything of significance in common lisp so this is just a best guess.