Definition - What does Clojure mean?
Clojure is a dynamic programming language that is a dialect, or variant, of the Lisp programming language. It is designed to be general-purpose and combines the interactive development and approachability of a scripting language with a robust and efficient infrastructure used for multithreaded programming.
It is also a compiled language that compiles directly into JVM bytecode while remaining completely dynamic.
Techopedia explains Clojure
Clojure also has a software transactional memory system when a mutable state is required, and a reactive agent system, which ensures that multithreaded designs are correct and clean.
The features of Clojure include:
- Tight Java integration where applications are easily packaged and deployed to JVMs and other application servers
- Functions are considered first-class objects
- Dynamic development with a read-eval-print loop
- Emphasis is given to recursion and other higher-order functions as opposed to side-effect-based looping
- Provides immutable and persistent data structures such as hashmaps, lists and sets
- The agent system, dynamic var system and software transactional memory allows concurrent programming
- Multimethods allow dynamic dispatch on the values or types of any arguments
Techopedia Deals: The Complete Computer Science Bundle
Join thousands of others with our weekly newsletter
The 4th Era of IT Infrastructure: Superconverged Systems:
Approaches and Benefits of Network Virtualization:
Free E-Book: Public Cloud Guide:
Free Tool: Virtual Health Monitor:
Free 30 Day Trial – Turbonomic: