Rich Hickey: "Clojure, I'm your father"

In the episode Rich Hickey on Clojure we get to know the Clojure's creator, Rich Hickey. As an introduction as well as a personal statement, I would like to highlight the basic idea in which Clojure was formed: Frustration. 

The discussion starts with a brief explanation of the author's decision to create a Lisp-like language in 2009, same year where well-established technologies, such as Java, C++ or even Python, were becoming  mainstream tools throughout the industry. As Hickey mentions, although these programmable utensils were popular, all of them lacked the power of adding macros or different processes to run under compilation time. Furthermore, they all share a relatively chunky syntax, making them suitable for lazy in addition to unprepared programmers for unhanded data manipulation. 

After 30 minutes, he roasted the entire tool-set I've been trying to completely master during the last 3 years... but he's right. As an entry-level programmer I have not met nor use a messier and complicated approach as the object oriented paradigm. Yes, maybe I'm being personal with it due to my difficulties that I previously discussed in past entries. But after hearing this podcast, I was glad that I was not the only one who shared this annoyance and that it wasn't my personal lack of experience the principal reason behind my bittersweet perspective.  I've been using Clojure for less than three months, yet, I'm able to see its potential as well as its ease for handling certain tasks. The advantages of storing values instead of identities alike object-oriented languages, as Hickey explains, allows an easier manipulation and protects programmers from itself. Nonetheless, no t everything is perfect, I must accept that one of its principal strengths is what keeps the language as a niche technology, and that is: its abstract syntax. The author states that making a data structure the principal modus operandi of a programming language is what unleashes its pure capacity due to a complete abstract control behind its functioning. However, how would a newbie programmer code using concepts he/she's not even familiar about? in addition to that, how would companies trust abstractions rather than the concrete and familiar concrete coding syntax? 

As a conclusion, Clojure is a beautiful language with the potential of becoming the mainstreams language for functional programming. Although, it will be a slow transition, I have faith that the future will be more opaque for programmable errors and more transparent for quickly transformations.



Comentarios

Entradas populares de este blog

Chat with Russ Olsen

Functional Programming: A present solution for future problems