Original ↗
Technology
The Roots of Lisp
paulgraham.com
Technology
2 min read → 35 sec
A short essay on John McCarthy's 1960 discovery that a programming language can be built from a small core, and why Lisp's self-describing design has shaped later language development.
John McCarthy showed in 1960 that a whole language can be built from a few simple operators.
Lisp's defining quality is that it can be written in itself.
02 / 13
McCarthy's 1960 paper did for programming something like what Euclid did for geometry.
03 / 13
Lisp means "List Processing."
Lisp uses lists for both code and data.
04 / 13
Lisp has a semantic core, which is why it has dialects unlike other languages.
05 / 13
Lisp's defining quality is that it can be written in itself.
06 / 13
Programming has had two clean models so far, the C model and the Lisp model.
07 / 13
The C model and the Lisp model are points of high ground, with swampy lowlands between them.
08 / 13
New languages moved toward the Lisp model by adding Lisp features piecemeal.
01
They started with the C model.
02
They added runtime typing.
03
They added garbage collection.
09 / 13
A common recipe in the past 20 years was to start with the C model and add Lisp features piecemeal.
10 / 13
Understanding McCarthy's result helps explain where programming languages are heading.
11 / 13
Retracing McCarthy's steps in running Common Lisp code shows what he discovered in simple terms.
12 / 13
Read the full source
The Roots of Lisp
paulgraham.com
13 / 13
Carouse
Turn any article, video, or podcast into a carousel you can browse in 30 seconds.
Carouse any link