DEV Community

Discussion on: What language or tool are you curious about, but have not found the time to use or learn?

Collapse
 
acoh3n profile image
Arik • Edited

I find Clojure to be a fascinating language. A descendant of LISP it comes from a long history of language design that is very different from other, more mainstream languages.

LISP has a reputation for being somewhat cryptic to read, having terrible performance (especially compared to something like C back in the "old days") and used primarily in an academic context. Personally, I find a lot to appreciate in LISP's terse syntax because it packs a lot of punch. But I guess it's a matter of taste.

Clojure, which first appeared circa 2007 took LISP and put a practical spin on it. For one, it targets the JVM as its operating environment so as to take advantage of the huge eco-system that was built around Java in the past 20 something years.

The thing that attracts me to Clojure the most, is that it forces me to think very differently about my solution. As someone who uses mostly object-oriented languages on a day-to-day basis for the past 20 years or so, I know that most modern languages will get the work done. But there isn't any joy to it particularly. It's merely perfunctory. Clojure brings back the joy of discovery. And of thinking in a completely new way, but still remain in the realm of pragmatic programming since Clojure is meant for "real world" applications.

But convincing an engineering manager isn't exactly easy. From what I can tell a company is either a "Clojure shop" or it isn't. There isn't really much of a middle ground. So I've yet to find the opportunity to build something that I had to ship with it.