3 ms·
I’m definitely not qualified to answer, but other than not needing to worry about having a Java runtime environment, my impression is that Clojure doesn’t have
by schemescape 3y ago
I’m definitely not qualified to answer, but other than not needing to worry about having a Java runtime environment, my impression is that Clojure doesn’t have a CL-like condition/restart system that allows for things like interactively dealing with errors and re-running/redefining functions in the middle of experiencing an error.
CL also has multiple dispatch and I’m not sure but I don’t think Java supports that.
I’m curious to see other responses. I’m also interested in the reverse: why Clojure over CL? (I assume integration with Java and immutable data structures, but there’s probably more.)
- cyberbanjo 3y agoJava I am unsure about, but Clojure does support multiple dispatch https://clojure.org/reference/multimethods https://clojure.org/reference/multimethods
- schemescape 3y agoThanks for the correction!
- amitprayal 3y agoI think Clojure syntax is more intuitive than CL , at least to someone who has not spend a lot of time in CL One e.g. I can see for "destructuring" (let [ [a b c] [1 2 3]] (+ a b c)) as opposed to (multiple-value-bind (a b c) (values 2 3 5) (+ a b c)) Also datastructres maps, sets sequence abstraction in Clojure seem more Organic...in CL its feels like bolted on