Latest version: 1.0.0Added 2009-10-04
Dynamic programming language that targets the Java Virtual Machine.Clojure is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an infrastructure for multithreaded programming. Clojure is a compiled language - it compiles directly to JVM bytecode, yet remains completely dynamic. Every feature supported by Clojure is supported at runtime. Clojure provides access to the Java frameworks, with optional type hints and type inference, to ensure that calls to Java can avoid reflection.Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a macro system. Clojure is predominantly a functional programming language, and features a set of immutable, persistent data structures. When mutable state is needed, Clojure offers a software transactional memory system and reactive Agent system that ensure clean, correct, multithreaded designs.