Today I worked on the Clojure koans, my first full day on Clojure and what was my experience?
Challenging to say the least but incredibly rewarding. It’s been a while since I’ve learnt a drastically different language. C# was statically typed, object oriented language and had huge similarities to Java.
Clojure is an entirely different experience.
First thing I noticed today was the amount of parenthesis that is used, thanks to the recommendation of the other software crafters I installed a few plugins that have made dealing with Clojure more pleasant. Namely the rainbow and paredit vim plugins. Without these I wasn’t enjoying the experience nearly as much.
What I immediately liked about Clojure is that the design decisions make sense, perhaps I shouldn’t say Clojure specifically but the lisp part. Due to the lack of syntax I found that I got working with the crux of a problem a lot sooner. I never really considered OO languages to be verbose (well perhaps Java) but since only spending a day of Clojure I’ve found it to be more succinct. What has been challenging is getting used to reading form right to left but I’m sure this will get easier with time.
I’m incredibly curious to see how it will be to build a app using this language, especially since I’m used to the OOP paradigm. I’m sure this will open my mind to new ideas and new ways to build applications.
I completed the koans up to recursion. Tomorrow I begin the 4Clojure challenges, looking forward to it.