The Roots of Lisp
Paul Graham’s essay The Roots of Lisp examines John McCarthy’s 1960 foundational work that makes Lisp unique.
McCarthy’s Innovation
McCarthy demonstrated how “given a handful of simple operators and a notation for functions, you can build a whole programming language.” He named it Lisp for “List Processing.”
Two Programming Models
Graham identifies two “clean, consistent models” in programming history—the C model and the Lisp model. Modern language development has progressively adopted Lisp features like runtime typing and garbage collection.
The Self-Referential Property
The defining quality distinguishing Lisp is “that it can be written in itself”—a recursive property fundamental to understanding the language’s essence.
Why This Matters
Understanding McCarthy’s discovery illuminates where programming languages are fundamentally heading. It explains why Lisp maintains multiple dialects unlike more rigid language families.
My Takeaway
Studying Lisp reveals the semantic core of programming itself. The simplicity of McCarthy’s original model shows how much can emerge from a few powerful primitives.
Have you explored Lisp’s foundations? I’d love to hear at persdre@gmail.com.