When designing a new application in Java or another OO language, I can sketch on a paper or imagine some UML diagrams that help me get an overview of the most important parts of the application. I find them useful, sort of a "mind map" for wrapping my mind around the whole application. These diagrams (class, component, objects) give me a high level of abstraction, allowing me to focus on the most important concepts and helping me exclude details that only cause an information overload when understanding the problem at hand.
Now, while learning Clojure, I can't find an effective way to do the same thing. In OOP, objects and classes fit nicely in an UML diagram, but Clojure/LISP functions in an application are many, smaller and so much more difficult to fit in a small, clear diagram.
How do you Clojure and LISP experts create a "mind map" diagram for the applications you are building?