From Hardware to Software

I Needed Some Clojure

December 15, 2019

All puns aside, these past couple of weeks I have been diving into Clojure more than I have before.

Clojure, written by Rich Hickey, is a functional language which runs in the Java Virtual Machine and has a base in Lisp. While the language was introduced to me by a co-worker a long time ago as they hoped we would use it in a current work project, I didn’t really see a need in my life for it. That was until I was looking at some coding challenges which the less characters you used, the higher you were on the leaderboard. While Julia and JS are typically up there, Clojure for some matched the characters (and made more sense to me). Clojure also made sense for me to learn as it is a pure functional language which is what the book I am reading (last blog post) talks about.

So I dove into Clojure and so far I can only say good things about it. It is built in a way that it should be immutable data (though this can be corrupted for challenges) and the syntax while not similar to the langauges I knew before, was easy to pick up. While the functional part of the language has some drawbacks when looping through code and trying to use as little characters as possible, it has really made me wonder if I was doing it the best way.

Unfortunately, Googling problems isn’t always as helpful as it would be with a python solution but the subreddit is pretty active. But for me this has made it feel that much sweeter when I solve the problem without a stack overflow post as it feels like my problem solving skills are getting better.

While currently I just plan to skim the surface so I can relate it to the functional programming book I am reading, I have a project for task scheduling in mind for 2020 which seems the best solution would be to write in Clojure.

Thanks for taking the time to read this and I will see you on the flip side!


Bradley Faircloth

Written by Bradley Faircloth who is on a technical journey, learning along the way!