Skip to content
HHackerTube.videoSurprise me

Practical Common Lisp

Practical Common Lisp on HackerTube: recommended by 3 Hacker News commenters across 4 separate months, 2011–2025.

Google TechTalks

talk · intermediate · evergreen

Open on YouTube

Peter Seibel's 2006 Google TechTalk on Practical Common Lisp, framed by the Sapir-Whorf hypothesis and Paul Graham's Blub paradox. It shows Lisp features such as condition restarts and its generic-function object system.

Why Hacker News recommends it

HN remembers it as the memorable explanation of restarts and multiple dispatch, referenced whenever those features come up.

people recommended it
3
separate months
4
strong recommendations
0
discussed on HN
2011–2025
“I will forever think of this talk by Peter Siebel”
— ethagnawl, Jun 2025, in “Ovld – Efficient and featureful multiple dispatch for Python”

What HN commenters said

5 Hacker News comments link this video. Each one links back to its thread.

ethagnawlJun 2025Recommends

I will forever think of this talk by Peter Siebel (author of Practical Common Lisp) whenever I hear about multiple dispatch: ▶ this video

in “Ovld – Efficient and featureful multiple dispatch for Python” · View on HN

jlg23Apr 2016Recommends

Peter Seibel's talk "Practical Common Lisp"[1] covers that from a different angle, also comparing multiple dispatch with the visitor pattern. [1] ▶ this video

in “A polyglot's guide to multiple dispatch” · View on HN

jlg23Jul 2015Recommends

The author provides a good example of legitimate use of change-class with his compiler example. About violating "some earlier architectural plan" in the case of libraries: Being able to do this allows CL programmers to freely mix libraries with different "architectural plans" without resorting to some half-baked fusion architecture that has to account for the different styles used by the libraries. Last but not least, change-class is not a hack - it's behavior is well defined and documented. And when you consider that CL's "object orientation" is more generic that c++'s or java's, based on generic methods alone, inferring from c++- or java-paradigms to good CL style just does not work. Peter Seibel's talk "Practical Common Lisp" at google explains that pretty well: ▶ this video

in “Use Cases for Change-Class in Common Lisp” · View on HN

tdrgabiMay 2011Recommends

I agree that my macros explanation was stretched. I simplified it too much. Restarts are really nice, I first heard about them in "Practical Common Lisp" google talk: ▶ this video

in “The German School of Lisp ("Fluchtpunkt Lisps")” · View on HN

bjoliNov 2019Cites it

Peter Seibel talks about it in Practical Common Lisp and in the talk he had at Google about the book: ▶ this video The book is available online I think.

in “Overview of Rust error handling libraries” · View on HN

Topics & tags

Functional programmingProgramming language designcommon lispmultiple dispatchcondition restartspeter seibellanguage design