5 ms·
I recommend SBCL when you need excellent math performance and Clozure (not Clojure) CL for a good environment on OS X. You can't go wrong with either.
by patrickmay 12y ago
I recommend SBCL when you need excellent math performance and Clozure (not Clojure) CL for a good environment on OS X. You can't go wrong with either.
- aidenn0 12y agoLast I checked, clisp had the best math performance as far as the lisp numeric stack for open-source lisps (obviously something like maxima is different). The best numeric benchmarks for sbcl all seem to be FFI to gmp (which happens to be the library used by clisp).
- pkhuong 12y agoCLISP doesn't use GMP; it has its own, very nice, bignum library. If you want to use GMP on SBCL, the SB-GMP contrib has been around for approximately one year; it'll hook transparently in SBCL's bignums, at runtime. However, I think the grandparent was referring to performance on typical numerical computing workloads: machine integer or floating point arithmetic, mixed with a fair amount of array indexing.
- aidenn0 12y agoAh, that makes a lot of sense; sbcl does a good job of open-coding machine integer arithmetic with fairly minimal type declarations.
- logicchains 12y agoSlightly off-topic, but is clisp still being developed? The last release seems to be from around 2010.
- aidenn0 12y agoLast commit was earlier this month: http://sourceforge.net/p/clisp/clisp/commit_browser http://sourceforge.net/p/clisp/clisp/commit_browser
- piokuc 12y agoI guess the reason there is not too much new CLISP development going on is that it's really a mature product. The ANSI standard of Common Lisp was published in 1994 and there was no amendments or additions since then. CLISP has implemented it awhile ago. Also, CLISP is written in C and doesn't compile to machine code like, for example, SBCL, so no need for an extra work to target new platforms. Again, that's my guess.
- zachbeane 12y agoI suspect it's more a lack of resources (time, energy, interest) than maturity. CLISP has bugs. Some bugs are fixed in version control. It would be nice to have a new release.