4 ms·
The main "unpure" parts of Clojure is that * it doesn't do tail call optimisation unless you explicitly mark the self-call using by using recur (the lack of im
by simongray 9y ago
The main "unpure" parts of Clojure is that
* it doesn't do tail call optimisation unless you explicitly mark the self-call using by using recur (the lack of implicit TCO is a JVM limitation)
* it doesn't use macros as much, although they are they're there and still used pretty often
* it has language literals for the built-in data structures that look odd to other LISP'ers, e.g. {...} #{...} [...]
* it's error messages are ecosystem dependent, e.g. Java stack traces for Clojure or and JS ones for ClojureScript