Published Sep 3, 2019

Episode 158: Rich Hickey on Clojure

Rich Hickey delves into the innovative design and practical applications of Clojure, a versatile Lisp dialect for the JVM, showcasing its concurrency prowess, simplicity, and unique features like immutability and metaprogramming, presenting it as an empowering alternative to Java.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Episode Highlights

  • Simplicity & Power

    Clojure offers a refreshing simplicity compared to Java, as explains. He highlights that while Java's complexity is often masked by familiarity, Clojure's simplicity lies in its lack of implicit complexity, making it potentially more powerful and succinct 1. agrees, noting that Java's predefined constructs can feel guiding but also restrictive 1. Hickey emphasizes that Clojure's Lisp heritage allows for syntactic extensibility, enabling programmers to write programs that write programs, a feature not easily replicated in Java 2.

    The ability to plug it into the transformation or compilation process and make it kind of seamless by that, that's important.

    ---

    This extensibility is akin to function abstraction, reducing repetition and enhancing code reuse.

       

    User Experience

    Transitioning to Clojure from mainstream languages can be challenging yet rewarding. acknowledges that familiarity with traditional languages can be an impediment, but overcoming this can reveal Clojure's potential 3. shares his curiosity about Lisp's elegance, despite his lack of practical experience 3. Hickey points out that Clojure's immutable data structures set it apart from traditional Lisps, which typically feature mutable structures 3.

    People need to get past if they're going to discover what's possible.

    ---

    This immutability is a core aspect of Clojure's design, offering a unique user experience.

Related Episodes