An Emacs Lisp Based Common Lisp

Lars Brinkhoff has a really interesting project up at GitHub. It's emacs-cl, a Common Lisp implemented in Emacs Lisp. This probably isn't all that useful but it sure is awesome. As far as I can tell, it's a pretty complete. CLOS and pretty printing are missing but it has lexical closures, packages, multiple values, bignums, adjustable arrays, and other CL features.

This is one of those things that is noteworthy not because it's going to change your life or be particularly useful but because it shows what a tool you already have can do. It's often said that Emacs Lisp is crippled and not powerful enough to do real work. Guys like Nic Ferrier and Kris Jenkins have already put the lie to that notion but here is yet another example of what Emacs Lisp can do.

I've said several times that Emacs is the closest thing we have to a Lisp machine but mostly we don't pursue that aspect of Emacs. Brinkhoff's project reminds us that Emacs really does provide a Lisp environment and that the Lisp it provides is far from toothless.

This entry was posted in Programming and tagged , . Bookmark the permalink.
  • Lork

    Well, I'd be convinced if it could run some of the examples from https://github.com/crategus/cl-cffi-gtk

    • Lars Brinkhoff

      That will have to wait for FFI support in Emacs.

  • http://www.wisdomandwonder.com Grant Rettke

    Vitriol shared on any subject usually doesn't actually say much about it.

    Emacs Lisp is a fine delightful language.

  • Phil

    This seems like impressive work which could potentially be extremely beneficial.

    Having never worked with Common Lisp, however, I am entirely unfamiliar with the existing libraries which could potentially be integrated with Emacs.

    Can anyone suggest some example 'killer apps' for this?