3 ms·
Can you elaborate a bit on the (dis-)advantages of ABCL compared to Clojure?
by dmichulke 9y ago
Can you elaborate a bit on the (dis-)advantages of ABCL compared to Clojure?
- lispm 9y agoWell, it supports all of Common Lisp incl. the whole numeric tower, Condition System and CLOS. If you know Common Lisp, it's all there. That means it's compatible with much of the Lisp literature and thus automatically has a well-written specification for its core language. It provides an interpreter and a compiler. One can use it with GNU Emacs / SLIME. ABCL has also more the feel of what one would expect from Lisp, like an interpreter integrated with a compiler, useful backtraces, Lisp-like error messages and a Break-Loop REPL using the condition system. The compiler is written in Lisp. Thus it provides some more of debugging experience 'we' all love. It has much less users, less Java specific stuff, etc. It's also a bit slower than the typical native compiled Common Lisp.
- flavio81 9y agoABCL is a full implementation of Common Lisp (an ANSI-standarized language rich on features and with a proven record of success stories) that happens to run in the JVM and has good facilities for calling Java code. However it is a full Common Lisp implementation which means it has all the nice stuff you would expect from such a piece of software. Clojure, on the other hand, is a different programming language, which for some reasons, and by design, is deeply tied to the underlying Java platform. Clojure "looks like a Lisp", but in reality it is fundamentally different from languages "of the Lisp family" like Scheme, Emacs Lisp and Common Lisp. There are many, many differences between Clojure and Common Lisp. For a HN thread on this topic, see: https://news.ycombinator.com/item?id=10206827 https://news.ycombinator.com/item?id=10206827
- didibus 9y agoThe standard library is vastly different, as well as the set of standard features. They only share syntax mostly, and even then, Clojure has extended the standard Lisp syntax. If you want a full immutable and functional paradigm, Clojure is best. Otherwise, CL.