Clojure is a relatively new, dynamic Lisp that runs on the JVM. Clojure, being a Lisp, is extremely malleable and extensible, allowing Clojure the language, and the programmer the ability to create powerful yet consistent abstractions. Clojure, out-of-the-box comes with a set of these "mini-languages" and gives the programmer the ability to create new ones easily. In this article we will discuss some of these mini-languages, and how you can use them to write idiomatic Clojure code.
Raju Gandhi is a Java/Ruby/Clojure developer and a programming language geek. He has been writing software for well over a decade in several industries including education, finance, construction, manufacturing and retail sectors. Raju has a graduate degree in Industrial Engineering from Ohio University. In his spare time you will find Raju reading, or watching movies, or playing with yet another programming language. He is affectionately known as looselytyped on Twitter.