The document discusses growing the vocabulary of a language from a small starting point. It begins by defining words like "man", "woman", and "machine" using only one-syllable words. It then explains how programming languages start small but must define new terms to accomplish more. Defining new words grows the language in a way that feels like a child learning. The document argues that all programming languages seem small compared to English, and that defining terms is a natural part of programming.
Original Description:
Higher-Order and Symbolic Computation, 12, 221–236 (1999)
Guy Steele's keynote at the 1998 ACM OOPSLA conference on "Growing a Language" discusses the importance of and issues associated with designing a programming language that can be grown by its users.
Given at the ACM OOPSLA conference.
A video of the lecture is available here: http://www.youtube.com/watch?v=_ahvzDzKdB0
The document discusses growing the vocabulary of a language from a small starting point. It begins by defining words like "man", "woman", and "machine" using only one-syllable words. It then…