Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

SBCL is perhaps the fastest open-source implementation of Common Lisp. It has incredible developers and a rich set of implementation-specific functionality. SBCL's "home platform" is Linux, but it runs on Linux, *BSD, Mac, and Windows (32-bit only for Windows at present). SBCL's native code compiler rivals C/C++ for speed when properly hinted. SBCL also has the highest-quality integration with emacs (via SLIME) and Vim (via slimv). The developers seem to expect that you will use SBCL with an editor, so the command-line REPL doesn't even have readline support. ITA Software uses SBCL to run all or most of QPX, the search engine behind sites like Orbitz and Expedia. SBCL does its own memory management and likes a large heap. Standalone executable size is large (20+MB) because it includes the compiler. SBCL is derived from CMUCL and thus has a 32-years-mature lineage and is very stable and performs very well. SBCL has excellent threading , Unicode, and 64-bit support.

CLISP is another implementation that is interpteted (i.e. not native-compiled like SBCL i.e. slower in most cases). It has a somewhat nicer REPL and debugger out of the box, and super-fast bignum support. I believe CLISP is what pg used to create Viaweb.

There is also Clozure Common Lisp (predating and not to be confused with Clojure). CCL is well integrated with Cocoa on the OS X platform and seems to be moving in the direction of ARM suport (iOS support in the future?). I have the impression that CCL may be more popular with OS X users, but I have yet to find reason to use it over SBCL on Linux.

ECL (Embedded Common Lisp) is an implementation that translates to C and uses gcc for compilation. ECL builds the tiniest executables (a couple hundred K or less) and is perhaps well-suited both as an extension language and for embedded platforms. ECL does not seem to support all of the libraries I've tried with it, but it supports enough of Common Lisp to be a viable platform for those who require its strengths.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: