Commercial Common Lisp implementations like LispWorks and Allegro Common Lisp cost thousands of dollars. What do you get in them which isn’t included in SBCL or something, which costs $0?
- ACL has AllegroCache, a true object database which has ACID transactions and scales to billions of objects. It is used transparently and integrates seamlessly with CLOS, Common Lisp’s ridiculously powerful object system. Depending on the project, this alone could be worth thousands of dollars.
- LW and ACL have fast embedded Prolog compilers which seamlessly integrates with everything else in the distribution, including AllegroCache. LW actually gives you a full-blown expert system IDE (which is LW’s distinguishing feature as it doesn’t have an object database). In the ’80s, the kind of expert system functionality LW provides costed thousands of 1980s dollars.
- Good cross-platform support so that you don’t run into the kind of problems the reddits had when working between Mac OS X and FreeBSD.
- Libraries for web programming: XML/SOAP/WSDL/yadda yadda parsers, HTML parsers, a Lispish web application server and HTTP server, and easy libraries for all major networking protocols bundled in.
- Cross-platform GUI libraries which are good enough for prototyping “programmer interfaces”.
- Database libraries: ODBC, MySQL, Postgresql, Oracle.
- Excellent foreign function interfaces for C libraries.
- ACL provides OLE/COM linkage and examples of things like creating a simple CLOS layer for working with Excel.
- Linkage to Java and/or .NET (e.g., jLinker and full support for RDNZL), which, together with the C FFI, means you can easily use code written in all the most popular languages.
Native threading(I guess you don’t get this), Unicode, and other oft-neglected but essential stuff.- Abundant working examples and comprehensive, helpful documentation for all of this.
- All these libraries are bundled in, they work, they’re efficient, and they are supported.
All Common Lisp distributions give you efficient implementations of CLOS, a metacircular multiple-dispatch multiple-inheritance object system with an amazing metaobject protocol, as well as mini-languages for pretty-printing and iteration. SBCL, LispWorks, and ACL all have optimizing native-code compilers that give you performance somewhere between C and Java. SLIME, LW, and ACL provide IDEs matched only by Squeak in power.
Clearly if you pay $3,000 or however much, you’re getting a helluva lot more than just an implementation of a spec from 1984.