Clojure (read as closure), is a powerful, lisp-1 programming language designed by Rich Hickey and designed to run on the Java Virtual Machine. This book shall provide a detailed introduction to the constructs of Clojure, and act as a tutorial through the features of the language.
Some paragraphs in [ ] are author notes. They will be removed as the page matures. You should be able to read the text OK if you ignore these notes. This Book is currently being restructured to better satisfy the wikibooks standard. Until completed, duplicate content may be seen.
Getting Started edit
- Basic Syntax
- Describes the basics in how the applications you write will be interpreted
- Coding Conventions
- Quickly describes the generally accepted conventions for Clojure.
- Functional Programming
- The entities used to store data of various shapes
- Identifies how to encapsulate a program from other programs
- Basic Operations
- Explains how use essential functions
- Data Types
- Explanation of basic data types in the Clojure language.
- Data Structures
- Explains how to use Clojure hash, list, and array data structures
- Meta Data
- Explaining meta data in the Clojure language.
- Special Forms
- Learn how to use several utility functions to support Clojure
- Branching and Monads
- How to implement imperative style into a functional language
- Exception Handling
- Responding to errors that can occur
- How expressions are evaluated
Java Integration edit
Advanced Topics edit
- Learn how to utilize the macro system Clojure uses
- Concurrent Programming
- Learn how to write programs that utilize concurrent execution
- Learn the perfected Clojure build system
- Reader Macros
- Macros that control the way code is interpreted
- Unit Testing
- Learn how to write unit tests in Clojure