Clojure is dynamic language for the Java Virtual Machine with several powerful features for building concurrent applications. In this talk you will learn about:
- Functional programming. Clojure's immutable data structures encourage side-effect free programming that can easily be shared across multiple processor cores.
- Software Transactional Memory (STM). STM provides a mechanism for managing references and updates across threads that is easier to use and less error-prone than lock-based concurrency.
- Direct access to Java. Clojure calls Java directly, and can emit the same byte code that a handcrafted Java program would. So, you can easily access the java.util.concurrent library.