297: Lisp Cycles
Title text: I've just received word that the Emperor has dissolved the MIT computer science program permanently.
Lisp is one of the oldest high level programming languages. Despite being significantly ahead of its time, it never got enough traction outside of academia, and has never been widely used. However, it is considered to be a very powerful language even in the present day. Quotations regarding Lisp show that several big names in computer science and the tech industry hold Lisp in very high esteem. Eric S. Raymond goes as far as to say
Lisp is worth learning for the profound enlightenment experience you will have when you finally get it; that experience will make you a better programmer for the rest of your days, even if you never actually use Lisp itself a lot.
Lisp is also famous for its use of fully parenthesized Polish prefix notation. As a result, Lisp programs take the form of enormous nested lists bounded by parentheses, and it is not uncommon to see the source code of a large Lisp program close off with an equally enormous stack of close-parens, representing the simultaneous termination of dozens of recursively and hierarchically nested functional and procedural structures.
In the first panel, Cueball praises Lisp, observing that no other language can match the awe that it still strikes despite its significant seniority.
In the second panel, Cueball proposes that new programmers might continue to learn Lisp forever; despite the language's lack of widespread adoption, a small cadre of hackers will always exist who keep the language alive.
First, a little background:
Throughout all this, Lisp, one of the first and greatest successes of theoretical computer science, has persisted, still in general though no-longer-universal use within the warrens of programming language and computability research, still studied by handfuls of students interested in something more than simply getting a job as a code grinder for Big Data, its features still inspiring generations of new language designers and implementers to do better (Ruby was designed — according to his admission — by Matsumoto Yukihiro as "a bad rip-off of Lisp" that would be "nicer to ordinary people;" Java 8 introduced lambdas — in 2014!). David Thornley even noted that whether or not Lisp was a "dead" or moribund programming language is, in fact, a question older than almost all programming languages, and has been for decades.
The third panel references Star Wars. The "old wizard" Obi-Wan Kenobi, who remembers the culture and sophistication of the Old Republic ("Before the dark times. Before the Empire.") and lives as a hermit in the desert at the beginning of the film spoke these lines when passing on a lightsaber to Luke Skywalker:
Your father's lightsaber. This is the weapon of a Jedi Knight. Not as clumsy or random as a blaster; an elegant weapon for a more civilized age.
The title text is also a reference to Star Wars lines:
The Imperial Senate will no longer be of any concern to us. I've just received word that the Emperor has dissolved the council permanently. The last remnants of the Old Republic have been swept away.
The MIT mentioned in the title text is, of course, the Massachusetts Institute of Technology, an institution fundamental to the development of Lisp (and Scheme, which is a dialect of Lisp). For about 20 years, MIT taught Scheme in its introductory computer science course, 6.001 — Structure and Interpretation of Computer Programs (that course has since been replaced with a course teaching Python).
- [Cueball is sitting at a computer, and Megan is standing behind the desk.]
- Cueball: Lisp is over half a century old and it still has this perfect, timeless air about it.
- Cueball: I wonder if the cycles will continue forever. A few coders from each new generation rediscovering the Lisp arts.
- [Man in Jedi robes carrying a towering stack of parentheses in his arms, speaking to Hairy.]
- Jedi: These are your father's parentheses. Elegant weapons. For a more... civilized age.