Get Started
Official Website
Online REPL
Quickest way to Get Started
Install:
- Java
yay -S jdk8-openjdk
- Leiningen
yay -S leiningen
Start a REPL by running:
lein repl |
Editor Setup
- Emacs
- Vim
- SublimeREPL (Sublime Text)
- Proto REPL (Atom)
- Light Table
- Nightcode IDE
- Cursive (IntelliJ plugin)
- Counterclockwise (Eclipse Plugin)
Document
- Clojure API Documentation - The official one
- Clojure Doc - A community-driven documentation for Clojure
- Clojure Docs - Community-powered documentation and examples repository
- Grimoire - Community Clojure Documentation
Code Conventions
A community coding style guide is available here.
Exercises
- 4clojure.com (Highly Recommended)
- Clojurecademy (Codecademy for Clojure)
- exercism.io
- Clojure Koans
Looking for a Library
Looking for a Cheatsheet
- Clojure Cheatsheet (the official one)
- Clojure Cheatsheets
Watch some Awesome Talks
- Clojure Made Simple - Rich Hickey explains Clojure
- Rich Hickey’s Greatest Hits by Changelog
- Simplicity Ain’t Easy by Stuart Halloway
- Debugging with the Scientific Method by Stuart Halloway
Books
- Clojure for the Brave and True (HTML version available)
- Programming Clojure
- Clojure Programming
- The Joy of Clojure - Although this isn’t a book for a beginner, it’s too good to leave out
Looking for some intresting discussions
- Resources for thinking in Clojure? - on Reddit
- Am I foolish for diving into Clojure with zero Java experience? - on Reddit
Clojure Distilled
Features
- Immutable
- Reusable
- Scalable
Clojure In Action
- The Core
- Functions
- Anonymous Functions
- Named Functions
- Higher-Order Functions
- Closures
- Threading Expressions
- Laziness
Code Structure
- Destructuring
- Namespaces
- Dynamic Variables