3 ms·
If we're indulging in idle speculation, then here's my contribution. I think Lisp failed for the same reason that ORMs exist, and to be even more provocative,
by dventimi 7y ago
If we're indulging in idle speculation, then here's my contribution.
I think Lisp failed for the same reason that ORMs exist, and to be even more provocative, for the same reason that women are underrepresented in programming: the Apple II.
Yes, yes, of course that isn't "the reason." "The reason", singular, is nonsense, as any outcome is a consequence of many interrelated causal factors. However, often a few or even one dominate, and in my view the Apple II[1] is a dominant factor for these outcomes.
Hear me out.
Evidently, there once was a time when women had a healthier representation within programming, and this roughly coincided with times both when there was an efflorescence of different programming models, and when "computers" was more a profession for adults. Then, the personal computer revolution occurred in the 1970s, which introduced inexpensive, under-powered computers into (upper) middle class homes, and this roughly occurred in tandem with the introduction of video games both in arcades and then in homes. In my unscientific observation, girls were shoved aside by their brothers, who swiftly moved those video game consoles and computers into their bedrooms, where just as swiftly we set about adapting games and writing our own games using the only language offered: BASIC. And so a baby boom of baby programmers occurred. Programming expanded beyond an adult profession and became also a province of adolescent hobbyists, whose first and only (for a long time) view of what it meant to program meant: an imperative language, with subroutines, standard control-flow operations, and mutable state. BASIC isn't usually put in the Algol family of languages, but it's a better candidate for a foster child of that family than the never-learned models of before: Prolog, SQL, Forth, Lisp, etc. It wasn't difficult to make the transition from BASIC to C, then to C++, and then to Java (picking up Perl and maybe Python along the way). Without even trying, that generation of boys became a generation of young men primed to program in a non-Lispy way, right around the time when the internet was creating a demand for programmers. What fruit did this yield?
* Boys and then men became overly-represented in programming, relative to decades before.
* The database was held at arm's length, and SQL was tolerated only by creating ORMs that permitted retreating to the comforting familiarity of imperative, mutable state, Algol-like languages.
* Languages like Lisp and Prolog were forgotten about, until being "rediscovered" decades later.
Of course, if any of this is true, it raises other questions
* Why did the early, cheap computer makers choose BASIC instead of Lisp?
* Why did later, more powerful computer makers choose C?
* Why was there a gender disparity in affinity toward games in kids and adolescents?
I can speculate on some of the reasons for these, but I've indulged in enough for now.
[1] "Apple II" is just a handy placeholder. Substitute Atari, Commodore 64, "personal computers", whatever, if you like.