Rich Hickey on Clojure

After listening to Rich Hickey on Clojure, I can agree with Rich on some topics. The main challenge for Rich is to make people understand that Clojure is very simple and that there are not as many rules as they might imagine. Clojure has many benefits, and Rich Hickey talks about one in specific: metaprogramming. Many of Lisp features are list, and being able to create programs from programs, programs from many things are great. Metaprogramming has to be used carefully.

Java might be a simple programming language and used by more people than Lisp but Lisp has an advantage over Java. Using Lisp, specifically, Clojure will be simpler than Java thanks to the implementation of lots of functions in the Sequence API. 

Rich Hickey also refers to the differences between Lisp and Clojure, with which I agree with some of them. First, Clojure is unique because the program is presented as data structures and not as a text to the compiler. Clojure has also more structures than only lists, for examples, vectors, and maps. Rich also says that one difference between Clojure and Lisp popularity is that Clojure retains Lisp power by including access to Java's libraries and many people know Java and its libraries very good. Finally, Rich says that Clojure's main characteristic is that the core data structures are immutable, the built-in library is made in terms of abstraction and non-concrete data structures, protocols, persistent data structures, and reference types, this might be kind of confusing by reading but it is very important for Clojure's working. 

I really liked this podcast because it talks about many important points that we don't know about lisp and after every reading or listening during this almost 3 months of working with Clojure, I keep learning more and more about this programming language and about different technologies like imperative languages. An imperative language is not something usually talked about in the programming area and it can be sometimes kind of difficult to work with but thanks to JVM, Clojure is a programming language which might become a powerful tool for using it in projects, or in any other activity. I want to improve my programming skills to become a better programmer by using Clojure. 

References: 

- Episode 158: Rich Hickey on Clojure, retrieved on September 22th, 2018 from: http://www.se-radio.net/2010/03/episode-158-rich-hickey-on-clojure/

Comments

Popular posts from this blog

The Roots of Lisp

The Promises of Functional Programming