May 2003
If Lisp is so great, why don't more people use it?
I was asked this question by a student in the audience at a talk I gave recently.
Not for the first time, either.
If Lisp is so great, why don't more people use it? A student asked me that recently, not for the first time.
A student asked me why, if Lisp is so great, more people don't use it. Not for the first time.
In languages, as in so many things, there's not much correlation between popularity and quality.
Why does John Grisham (King of Torts sales rank, 44) outsell Jane Austen (Pride and Prejudice sales rank, 6191)?
Would even Grisham claim that it's because he's a better writer?
Here's the first sentence of Pride and Prejudice:
It is a truth universally acknowledged, that a single man in possession of a good fortune must be in want of a wife.
"It is a truth universally acknowledged?"
Long words for the first sentence of a love story.
In languages, popularity correlates little with quality. Grisham outsells Austen a hundred to one—but would even he claim it's because he writes better? Recall the long, formal opening of Pride and Prejudice.
Long words for the first sentence of a love story.
Popularity and quality barely correlate. Grisham outsells Austen a hundred to one, but no one would claim he's the better writer.
Like Jane Austen, Lisp looks hard.
Its syntax, or lack of syntax, makes it look completely unlike the languages most people are used to.
Before I learned Lisp, I was afraid of it too.
I recently came across a notebook from 1983 in which I'd written:
I suppose I should learn Lisp, but it seems so foreign.
Fortunately, I was 19 at the time and not too resistant to learning new things.
I was so ignorant that learning almost anything meant learning new things.
Like Austen, Lisp looks hard: its lack of syntax makes it look unlike anything people know. I was afraid too; a 1983 notebook called it "so foreign."
Fortunately I was 19, ignorant enough that learning anything meant learning new things.
Like Austen, Lisp looks hard—its lack of syntax makes it look foreign. I was afraid of it too, until learning it at 19.
People frightened by Lisp make up other reasons for not using it.
The standard excuse, back when C was the default language, was that Lisp was too slow.
Now the standard excuse is openly circular: that other languages are more popular.
(Beware of such reasoning.
It gets you Windows.)
People frightened by Lisp invent reasons. The old excuse was that it was slow; now that it's among the faster languages, the excuse is openly circular: others are more popular.
(Beware of such reasoning. It gets you Windows.)
People frightened by Lisp invent reasons. The old excuse was that it's slow; now that it isn't, the excuse is openly circular—other languages are more popular.
Popularity is always self-perpetuating, but it's especially so in programming languages.
More libraries get written for popular languages, which makes them still more popular.
Programs often have to work with existing programs, and this is easier if they're written in the same language, so languages spread from program to program like a virus.
And managers prefer popular languages, because they give them more leverage over developers, who can more easily be replaced.
Popularity is self-perpetuating, especially in languages: more libraries get written for popular ones, programs spread like a virus, and managers prefer them because developers grow easier to replace.
Popularity is self-perpetuating, especially in languages: more libraries, easier interop, and managers who can swap out interchangeable developers.
Indeed, if programming languages were all more or less equivalent, there would be little justification for using any but the most popular.
But they aren't [blocked] all equivalent, not by a long shot.
And that's why less popular languages, like Jane Austen's novels, continue to survive at all.
When everyone else is reading the latest John Grisham novel, there will always be a few people reading Jane Austen instead.
If languages were equivalent, there'd be little reason to use any but the most popular. But they aren't [blocked]—so less popular ones, like Austen's novels, survive. A few will always read Austen while everyone else reads Grisham.
If languages were equivalent there'd be no reason not to pick the popular one. But they aren't—which is why, like Austen's novels, less popular languages survive at all.