2 ms·
I don't know that there are good use cases, you just use what you want. For example I use Clojure and its variants for writing command lines, scripts, websites,
by didibus 4y ago
I don't know that there are good use cases, you just use what you want. For example I use Clojure and its variants for writing command lines, scripts, websites, backend services, Cron jobs, programming exercises/practice, and desktop applications.
Sometimes I use it for data analysis and visualization as well.
I use it at work and for personal stuff.
It's not that it has some awesome superior or full featured framework or feature for any one of those use cases, just that it's overall a language I like to use and which I have more fun with, and it's sufficient at everything you'd need to seriously use it for all those things. I prefer working interactively over a running program, I prefer the flexibility to extend language to my own needs with macros and higher order functions, I like the simplicity of working directly with data instead of ADTs or single use containers like Classes, I prefer structural editing for navigating and modifying source code, I prefer functional programming over OOP, I prefer immutable defaults and value semantics, and I prefer Clojure's well thought out core sequence manipulation functions.
My point is that Clojure is well rounded, there's a few things it's not good enough for, but those are rare, stuff like embedded systems, AAA games, high performance audio or video processing, raw number crunching, etc. For everything else Clojure is adequate, so it's just up to what you want to use, if you enjoy Clojure and it brings you joy, you can just use it, you don't need to find a perfect use case that it's uniquely best at.