background preloader

Clojure

Facebook Twitter

Clojure - Functional Programming for the JVM. By R. Mark Volkmann, Partner Object Computing, Inc. (OCI) last updated on 6/2/13 Contents Introduction The goal of this article is to provide a fairly comprehensive introduction to the Clojure programming language. A large number of features are covered, each in a fairly brief manner.

Feel free to skip around to the sections of most interest. Please send feedback on errors and ways to improve explanations to mark@ociweb.com, or fork the repository and send a pull-request. You said X, but the correct thing to say is Y. Updates to this article that indicate the "last updated" date and provide a dated list of changes will be provided at Code examples in this article often show the return value of a function call or its output in a line comment (begins with a semicolon) followed by "->" and the result. (+ 1 2) ; showing return value -> 3 (println "Hello") ; return value is nil, showing output -> Hello Functional Programming Clojure Overview Getting Started.

Learn Clojure in 15 minutes, perhaps. Moving on from pointless flamebait rants, here's something a bit more constructive. Inspired by Tyler Neylon's excellent Learn Lua in 15 minutes, I humbly present my original effort at an equivalent for Clojure (also available as a gist). Further Reading This is far from exhaustive, but hopefully it's enought o get you on your feet. Clojure.org has lots of articles: Clojuredocs.org has documentation with examples for most core functions: 4Clojure is a great way to build your clojure/FP skills: Clojure-doc.org (yeah, really) has a number of getting started articles: 4clojure – Welcome! Clojure Atlas – An experimental visualization of the Clojure language and its standard library. The Clojure Toolbox.