OOPSLA Conference: Growing a Language
Why Hacker News recommends it
Treated as a must-watch for language designers, and cited whenever extensibility and language size are debated.
What it is
Guy Steele's classic 1998 OOPSLA keynote on how a programming language must grow with its user community. He delivers it in a playful style, starting with only monosyllabic words and defining new terms as he goes.
Recommended by 6 HN commenters across 6 different months, 2020 to 2026.
What Hacker News said
Strong rec nfoz · 2022-01 · on “In defense of complicated programming languages”
In case anyone hasn't seen this most excellent talk on this topic, I highly recommend: Guy Steele - Growing a Language (OOPSLA '98) [this video]
Strong rec MrDOS · 2022-08 · on “The Up-Goer Five Text Editor”
This is an excellent talk, and exactly where my mind went, too. I might suggest watching this upload of it instead, to avoid capture errors in the older upload: [this video]
Recommends jdontillman · 2020-09 · on “Growing a Language (1998) [video]”
For some reason that version has a large number of audio glitches. But very recently the Computer History Museum published a cleaned-up version: [this video] Good!
Recommends pfarrell · 2022-11 · on “Fred Brooks has died”
Not writing, but I have found all of Brett Victor's speeches to be incredibly inspiring on how I think about what I want to work on and where we're going. Inventing on Principle by Brett Victor: [LINK] Growing a Language by Guy Steele: [this video] We Really Don't Know How to Compute! by Gerald Sussman: [LINK]
Recommends craftuser · 2023-03 · on “How Big Should a Programming Language Be?”
This Guy Steele talk is related to this topic: [this video] A good watch for the fine people in this thread (and please ignore explicit or implied linkages to Java--it's full of the broad concepts, not narrowly JVM stuff)
Recommends pohl · 2026-07 · on “A Forlorn Hope of Fortran Modernisation”
It’s a tragedy. I feel the work they were doing was important. At least we got this talk from guy steele [this video]
Cites ghoward · 2021-11 · on “Ask HN: If you designed a new programming language, what would its features be?”
Funny you ask that, because I am making a programming language! (1) Structured concurrency, best explained at [1], [2], [3], and [4]. More on this later. (2) Extensibility. Most people think that this means macros. It doesn't. However it's done, as curryst said, languages are not perfect, and extending a language is important. See "Growing a Language" by Guy Steele, Jr. [5] More on this later. (3) Like many other posts, having real-world units like feet, meters, pounds, kilograms, etc., for calculations and type checking, but the default number type should also be a BigRational. (4) Ranged types, like Ada, allowing programmers to explicitly limit the range a type can be, eliminating errors.
Cites j-pb · 2021-11 · on “What memory model should Rust use?”
The shallowness of rusts correctness has pretty much killed my interest in it. Much of its purported virtue seems to be mostly lore and myth, and doesn't keep its promises under close inspection and scrutiny. For example the "Rustonomicon" is only half finished and doesn't have that much real insight that couldn't be gained from a lot of basic-ish rust tutorials. The memory model is not propery defined and only kinda sorta borrowed from C++ as the article mentions. The borrow checker has only been formally specified and veryfied in a much simplified form and only very recently [2] ,with the actual model "just being what the borrow checker implementation does". Having a fancy datalog based bo