Speaker Topics - No Fluff Just Stuff

Programming Clojure

Find out why Clojure is Java.next

  • Clojure provides clean, fast access to all Java libraries
  • Clojure provides all the low-ceremony goodness you know and love from dynamic languages
  • Clojure includes Lisp's signature feature: Treating code as data through macros.
  • Clojure's emphasis on immutability and support for software transactional memory make it a viable option for taking advantage of massively parallel hardware.

Clojure is a dynamic programming language for the Java Virtual Machine, with a compelling combination of features:

  • Clojure is elegant. Clojure's clean, careful design lets you write programs that get right to the essence of a problem, without a lot of clutter and ceremony.
  • Clojure is Lisp reloaded. Clojure has the power inherent in Lisp, but not constrained by the history of Lisp.
  • Clojure is a functional language. Data structures are immutable, and most functions are side-effect free. This makes it easier to write correct programs, and to compose large programs from smaller ones.
  • Clojure simplifies concurrent programming. Of course, Java itself has pretty good concurrency support, but there is wide agreement that lock-based concurrency is difficult to use correctly. Clojure provides alternatives to lock-based concurrency: software transactional memory, agents, and dynamic variables.
  • Clojure embraces Java. Calling from Clojure to Java is direct, and goes through no translation layer.
  • Unlike many popular dynamic languages, Clojure is fast. Wherever you need it, you can get the exact same performance that you could get from hand-written Java code.

About Aaron Bedra

Aaron Bedra is a Senior Engineer at DRW, where he works at the intersection trading and technology. He has served as a Chief Security Officer, Chief Technology Officer, and Principal Engineer/Architect. He has worked professionally on programming languages, most notably Clojure and ClojureScript. Aaron is the creator of Repsheet, an open source threat intelligence toolkit. He is the co-author of Programming Clojure, 2nd and 3rd Edition and a contributor to Functional Programming: A PragPub Anthology.

More About Aaron »