I've been taking a look at Clojure lately and I stumbled upon this post on Stackoverflow that indicates some projects following best practices, and overall good Clojure code. I wanted to get my head around the language after reading some basic tutorials so I took a look at some "real-world" projects.
After looking at ClojureScript and Compojure (two the the aforementioned "good" projects), I just feel like Clojure is a joke. I don't understand why someone would pick Clojure over say, Ruby or Python, two languages that I love and have such a clean syntax and are very easy to pick up whereas Clojure uses so much parenthesis and symbols everywhere that it ruins the readability for me.
I think that Ruby and Python are beautiful, readable and elegant. They are easy to read even for someone who does not know the language inside out. However, Clojure is opaque to me and I feel like I must know every tiny detail about the language implementation in order to be able to understand any code.
So please, enlighten me!
- What is so good about Clojure?
- What is the absolute minimum that I should know about the language in order to appreciate it?
I don't understand why someone would pick Clojure over say, Ruby or Python- it runs on the jvm and can use the entire java library.
... have such a clean syntaxarguably, lisp like functional languages have a very clean syntax and structure, its just one most people aren't used to.
fewsymbols outside of parenthesis compared to many languages, and almost no reserved words. The reason you find it unreadable is because it's a totally new paradigm and works in a fundamentally different way than a typical Object Oriented language. Give it some time and power through.