Metacircular thoughts

May 14, 2007

What do you get in a commercial Common Lisp implementation?

Filed under: Lisp, Politics, Prolog, The Dark Side, Web development — metacircular @ 8:44 pm

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.

15 Comments »

  1. neither of ACL and LW offer real native threading where lisp code can run simultaneosly more than on one core.

    afaik it’s offered in SCL, which is less widely known and costs a lot.

    Comment by killerstorm — May 15, 2007 @ 2:01 am | Reply

  2. It’s all very well getting all of these extras over and above the original spec, but what if you don’t actually want/need some (or all) of them? It’d be nice if the two big vendors offered a minimally-priced commercial Lisp, with a more minimal feature set. Perhaps something with Corman Lisp-like pricing, but cross-platform… (yes, there really is no pleasing some people ;-)

    Comment by Recoil — May 15, 2007 @ 5:44 am | Reply

  3. Nice PR.
    You just forgot to mention that Franz charges a lot, but you won’t even get a graphical interface in some OSs. But they’ll charge you just the same.

    You also forgot to mention that Franz will want to become your business partner, charging royalties per runtime. You better have a nice business plan…

    You also forgot to mention that LispWorks has delivered sucky implementations, like the one before this latest release, which totally sucked on Mac OS. Although they fixed it, they never felt shame for selling when it was broken.

    Some of the things you describe are in Allegro and not in LispWorks and vice versa. Nice to see you unabashedly push your agenda.

    Comment by jj — May 15, 2007 @ 7:06 am | Reply

  4. @jj: Agenda? Haha, what agenda? Do you think I work for Franz/LW? I wish!

    I love great programming languages, that’s my agenda. Chill.

    Comment by metacircular — May 15, 2007 @ 7:35 am | Reply

  5. Libraries for web programming?

    LispWorks has SSL, ACL has Soap and XML-RPC but most of the other pieces are Open Source
    Lisp packages or common in non-commercial CLs.

    The IDE and debuggers are really nice in the commercial CLs and are often used
    as a differentiator. Many people rave about the ACL editor and debugger.

    Nice article.

    Comment by Chris Dean — May 15, 2007 @ 10:56 am | Reply

  6. [...] What do you get in a commercial Common Lisp implementation? « Metacircular thoughts (tags: metacircular.wordpress.com 2007 at_tecp Lisp blog_post) [...]

    Pingback by rascunho » Blog Archive » links for 2007-05-15 — May 15, 2007 @ 12:21 pm | Reply

  7. FWIW, I am a very happy Franz customer. I like their stuff because they have an excellent debugger, a good emacs-lisp interface (that I’m locked into with years of accumulated tweaks!), and probably best of all, their very responsive support.
    Yes, it’s a lot of money, but my hourly rate is high, too.
    Occasionally I think about switching to SBCL, but the ACL costs never seem onerous enough to outweigh the advantages.
    If I really wanted to deliver a bunch of copies of some software, I might swap to SBCL or LispWorks for delivery, though.
    So that’s my mileage.

    Comment by Robert Goldman — May 15, 2007 @ 12:35 pm | Reply

  8. [...] What do you get in a commercial Common Lisp implementation? Commercial Common Lisp implementations like LispWorks and Allegro Common Lisp cost thousands of dollars. What do you […] [...]

    Pingback by Top Posts « WordPress.com — May 15, 2007 @ 3:58 pm | Reply

  9. re: r goldman

    i really dont get the point of using ACL if you are going to deliver the final product w/ other lisps.

    is the IDE worth 6k ? I dont think so.

    the killer features of ACL are the very efficient (both space and time) and feature-rich non-portable libraries/extension.

    i think a lot of people want their alleogrocache and the interop stuff but can’t afford it.

    unless you’re the C?O of your company, it’s really hard to convince your boss to go along with Franz’s runtime licenses (it costs a lot and nobody likes lock-in).

    lispworks costs

    Comment by anon — May 15, 2007 @ 4:09 pm | Reply

  10. re: r goldman

    i really dont get the point of using ACL if you are going to deliver the final product w/ other lisps.

    is the IDE worth 6k ? I dont think so.

    the killer features of ACL are the very efficient (both space and time) and feature-rich non-portable libraries/extension.

    i think a lot of people want their alleogrocache and the interop stuff but can’t afford it.

    unless you’re the C?O of your company, it’s really hard to convince your boss to go along with Franz’s runtime licenses (it costs a lot and nobody likes lock-in).

    lispworks costs ~ Visual Studio. It’s perfectly acceptable in profersional envirnoment but maybe a bit deep for hobbyist.

    and the biggest advantage you forget to mention is the tree-shaker. both acl and lw can shake the image down to

    Comment by anon — May 15, 2007 @ 4:09 pm | Reply

  11. To the owner of this blog – please delete the previous comments and also you need to html-escape the input from the comment box

    re: r goldman

    I really don’t get the point of using ACL if you are going to deliver the final product w/ other lisps.

    is the IDE worth 6k ? I don’t think so.

    the killer features of ACL are the very efficient (both space and time) and feature-rich non-portable libraries/extension.

    i think a lot of people want their alleogrocache and the interop stuff but can’t afford it.

    unless you’re the C?O of your company, it’s really hard to convince your boss to go along with Franz’s runtime licenses (it costs a lot and nobody likes lock-in).

    lispworks costs less than Visual Studio. It’s perfectly acceptable in professional environment but maybe a bit deep for hobbyist.

    and the biggest advantage you forget to mention is the tree-shaker. both ACL and lw can shake the image down to under 10mb (with libraries loaded)

    this makes a lot of differences where you go from prototyping to production.

    my 0.000002

    Comment by anon — May 15, 2007 @ 4:12 pm | Reply

  12. hi.

    the killer feature of the free lisps is that they are free as in freedom.

    my needs might be basic, but the cost of running a 20mb image over a 10mb image don’t sway me into slavery.

    I’d rather support the development and use of free software.

    Comment by trashmaster5000 — May 16, 2007 @ 4:24 am | Reply

  13. Don’t the vendors realise that their compilers aren’t worth that much anymore?

    The barrier to entry is too high for most developers. For example, if I wanted to develop a multi-platform desktop application (Windows, Mac & Linux) in Lispworks, I have to buy three Professional licenses @ $1,300 each = US$3,900. And that’s only the Professional edition, which doesn’t have their database API. You’d have to go to something like CLSQL.

    Last year while working with Visual Studio, I must’ve spent at least $2,000 on components because I wanted a speedy implementation with good support. All on the Windows platform.

    And when you look at the Java & Python camp, many of these things come for free.

    I’m sure if the vendors repositioned their business towards providing components & add-ons, they can offer their compilers for a substantially reduced price, provide more support and make more money.

    In this situation, I really hope SBCL rises up and becomes a standard, because I really like Lisp (or what I’ve seen so far) and hope to see it last another 50 years.

    Comment by Chris — July 21, 2007 @ 5:12 am | Reply

  14. Hello webmaster
    I would like to share with you a link to your site
    write me here preonrelt@mail.ru

    Comment by Alexwebmaster — March 3, 2009 @ 3:44 am | Reply

  15. classica

    Comment by Ron — August 11, 2009 @ 7:35 pm | Reply


RSS feed for comments on this post. TrackBack URI

Leave a comment

Blog at WordPress.com.