|
|
|
|
|
by agentultra
3943 days ago
|
|
> The STM and concurrency features of Clojure are what brought me in, and they certainly haven't been "done before". Common Lisp's concurrency story was always poor. It's the JVM that does most of the work here for Clojure. You get the same features when working in Java if you wanted them. Most CL implementations provide access to native threads and kernel polling facilities (kqueue, select, epoll, etc). If "modern," means, "leverages the libraries and implementation of a well-funded ecosystem" then I suppose you have a point. Clojure is quite modern. And that is confusing. > You could also argue that the effects of lazy evalutation and transducers could have been achieved before using SERIES package, but then you surely haven't tried to actually use and debug SERIES code. I'd much rather debug CL code any day. Even at its worst it is still far ahead of Java's tracebacks and having to mentally map them back to where the error occurred in your Clojure code. |
|