So, Tim Baldridge was nice enough to reply to my question and shared a link to this video. It's a pretty good presentation by the creator of Clojure, Rich Hickey. It's great at conveying why you should care about Clojure and what makes it awesome, but after watching it I needed more, a lot more, before I could understand what was going on in any of these programs.
Initial Reaction to the Syntax
Maybe it's just because I'm so used to OOP languages, but normally when I look at something I've never seen before I can still pick out function declarations, variables, some function calls and other stuff happening. When I look at a Clojure program I feel like my brain just melts, and I'm thinking to myself, "Ok... what the actual **** is going on here??". I you're feeling that, don't worry. Feelings like that are normal at first, and you really just need to learn the basics of Clojure. Then things should start making a little more sense.
Code School Videos
This is a pretty cool website that's open-source and totally free to use. They offer loads of little challenge problems that have to do with Clojure. After you have a basic understanding of what Clojure is and how it works, this could be a nice place to spend time sharpening your skills and understanding of Clojure.
I really like physical books because there is normally a ton of information in them, much more than random web sites. Unfortunately, I couldn't find any books about Clojure in my local bookstores or libraries. However, a quick google search with the keywords, "closure book pdf" brings up a ton of results, and each pdf really is the full, entire book! Wow! This is almost more knowledge about Clojure than I would ever ant to know, but it's awesome that anyone has access to it so easily.
- Practical Clojure: http://buhoz.net/public/books/lenguajes/clojure/Practical.Clojure.pdf
- Programming Clojure: http://blog.shuo1.com/zms/clojure/Programming_Clojure.pdf
- The Joy of Clojure:
- Clojure in Action: http://www.clyce.net/wp-content/uploads/2013/02/Clojure-in-Action.pdf
- Clojure in Small Pieces: http://daly.axiom-developer.org/clojure.pdf
In the video from Rich Hickey he bashes OOP languages for the programmer being able to name things. You name variables, functions, constants, files, directories, and he describes the programs as being, "the programmer's interpretation of what's happening on the screen" whereas Clojure doesn't need any of this extra fluff and is just concerned with the data. That sounds like a noble cause, but it's still not clear to me how I would build a full-scale webapp without naming things or creating objects. I'm also interested to see how well Clojure can fit itself into the seemingly SPA-crazy web development world although things like this make me thing building an Angular app with Clojure is possible. I'm definitely intrigued by Clojure and will be using these mentioned sites to help get a better understanding of this concise yet wacky-looking programming language. Hopefully, you found something here helpful in building your own understanding of Clojure!
The posts on this site are written and maintained by Jim Lynch. About Jim...