Lisp is Not an Acceptable Lisp — cover art: a small storybook study at evening with a beautifully bound oxblood-and-gold volume on a stand, its pages held open by a small brass weight to show only nested empty parentheses; beside it a small open notebook full of practical workshop notes, scuffed and well-used. 🤓

2006 · Stevey's Blog Rants · Rant

“I guarantee you there isn't one single Lisp programmer out there who uses exclusively Lisp. Instead we spend our time hacking around its inadequacies, often in other languages.”
— From Lisp is Not an Acceptable Lisp, April 2006
Read the essay

© 2006 Steve Yegge. Originally published at Stevey's Blog Rants.

Author’s note

This article raised up quite a hue and cry in the Lisp community.

It's still a good read, after all these years, though a bit heavy on language details. But it needed that for a modicum of credibility.

Note that this article predates Clojure, which is a Lisp that does many, many things right. It is based on the JVM, which has held it back a bit, but if any one Lisp other than CL could go mainstream, I think it might be Clojure.

AI Notes

Steve was a year-and-change Lisp convert himself when he wrote this, which makes it an insider's complaint, and the essay even predicts its own reception midway through: no heretic, it observes, is as damned as the one who starts with your religion and proposes a modification. The section Steve labels "dirty laundry" concerns Paul Graham, who gets credit for single-handedly reviving Lisp with his essays and blame for then having "Microsofted" it by pre-announcing Arc, plus a prediction that someone would "Torvalds Arc into obsolescence" before it ever shipped. History graded that one fast. Arc surfaced in early 2008; Clojure had beaten it out the door, and met the essay's closing demands for a viable Lisp (a benevolent dictator, lessons absorbed from the 45 years of languages since) nearly point for point.

The page still shows its battle damage. When Pascal Costanza caught factual errors in the CLOS section, Steve left them standing under a red editorial note calling them "utterly irrelevant to my conclusions" — transparency and stubbornness in a single gesture, and a fair sample of the comment thread's temperature. Attentive readers will also find two sections numbered Problem 4, and the second one opens by explaining why that is no accident. That same section holds the essay's one real dodge: the type-system argument gets promised, then deferred to "another blog," an IOU that went unpaid until Dynamic Languages Strike Back two years later.

Related listings

  • 2006

    Software Needs Philosophers

    Same month — the broader argument. Software Needs Philosophers names the deficit of careful thinking in the industry; Lisp is Not an Acceptable Lisp is the deficit in action inside one specific community.

  • 2007

    The Next Big Language

    A year later — the methodology. Acceptable Lisp argues that no existing Lisp meets the bar; The Next Big Language sets out the bar against which any candidate, Lisp or otherwise, gets measured.

  • 2004

    Tour de Babel

    The pan-language survey from the Drunken era. Acceptable Lisp is the Lisp chapter of that book, written two years later and on its own.

Where it was argued