4 ms·
Why not just use one of the Common Lisp flavors then? Racket has been rising in popularity last few years: https://racket-lang.org https://racket-lang.org
by aduffy 10y ago
Why not just use one of the Common Lisp flavors then? Racket has been rising in popularity last few years: https://racket-lang.org https://racket-lang.org
- jfaucett 10y agomainly because the CLs aren't clojure i.e. AFAIK don't use persistent data structures, and don't focus on robust concurrency primitives, don't have STM, etc... But if there is a CL out there that does all that I'd give it a try tonight :)
- klibertp 10y agoYou could try LFE[1] instead if what you want is concurrency, but it still is a hosted language, the only difference being that it relies on Erlang instead of Java ecosystem. [1] http://docs.lfe.io/current/index.html http://docs.lfe.io/current/index.html
- Jach 10y agoLisp (what is a Common Lisp "flavor"? Racket is Scheme) has answers to all... Of course the benefit of Clojure baking those things in is you can rely on them in other people's programs, but still idiomatic Lisp seems to do an ok job managing state, especially compared to other languages. Plus its other features that Clojure lacks might make the tradeoff worth it. Parallel programming: https://lparallel.org/overview/ https://lparallel.org/overview/ Functional collections: https://github.com/slburson/fset https://github.com/slburson/fset STM: https://common-lisp.net/project/cl-stm/doc/index.html https://common-lisp.net/project/cl-stm/doc/index.html
- klibertp 10y agoRacket is not Scheme (anymore). Racket is a Lisp-1 with lots of different features and "batteries included" stdlib. It's a "descendant of Scheme". Worth taking a look into definitely, but it doesn't have STM and "persistent data structures" which jfaucett seems to want. It does have solid concurrency and parallelism primitives, though.
- deleted 10y ago[deleted]
- lgas 10y agoRacket is not a common lisp flavor.
- aerique 10y agoJust to be that guy: Racktet is a Lisp (well: Scheme) flavor but not a Common Lisp flavor. (Common Lisp is also a Lisp flavor like Racket.)
- erikj 10y agoAlso there is an object system called Flavors for the early Lisp flavor ZetaLisp.