3 ms·
Clojure is particularly well suited - at least Rich Hickey would claim - to real world applications with unsafe or unstructured inputs. I.e. complex programs th
by room271 7y ago
Clojure is particularly well suited - at least Rich Hickey would claim - to real world applications with unsafe or unstructured inputs. I.e. complex programs that receive or pull data from external and loosely-typed sources. A lot of web programming falls into this category. Why is it well suited to these? Because it is dynamic, and offers rich runtime solutions to validation (Spec), has immutable data structures, safe and relatively simple concurrency primitives, and has the expressivity of a lisp. It also has access to the vast array of JVM libraries which helped early adoption (but possibly hindered it in the longer term?!).
- cutler 7y agoAlthough I love working with Clojure more than any other language it's relationship with its host is somewhat schizophrenic. Calling Java classes from carefully-crafted functional code is like pouring tomato ketchup over a lemon sorbet. Thankfully there are about 23,000 pure Clojure libraries at clojars.org to help my Clojure code stay functional.
- stingraycharles 7y agoIt depends on what your requirements are. Through the years, I found it easier to write reliable code by just skipping the Clojure wrapper libraries (e.g. using Kafka directly rather than a wrapper): it's easier to "escape" into functionality the wrapper doesn't offer, and it's typically more performant as well.