top | item 2359174

Guy Steele: Growing a Language (video 53:30)

103 points| ashutoshm | 15 years ago |video.google.com | reply

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.

Link to PDF http://www.cs.virginia.edu/~evans/cs655/readings/steele.pdf

21 comments

order
[+] jfm3|15 years ago|reply
"This is the nub of what I want to say. A language design can no longer be a thing. It must be a pattern -- a pattern for growth -- a pattern for growing the pattern for defining the patterns that programmers can use for their real work and their main goal."

One of the most incredible CS things I've ever taken in.

[+] dantheman|15 years ago|reply
That's at time stamp ~13:18

I'm 100% in agreement, this applies not only to languages, but up and down the technology stack. We need to use datastores that support schema evolution, data objects that assume and open world and not a closed world.

[+] anactofgod|15 years ago|reply
Actually, it's at 41:53, not 13:18.

Though the lead-in just prior (41:38), is worth hearing, too.

[+] CurrentB|15 years ago|reply
Classic. If you care even the slightest bit about programming languages you need to watch this.
[+] pepijndevos|15 years ago|reply
reaction; the action caused by an action

While I was writing a reaction, I thought I should use only words with one syllable, and words defined in his talk.

information; facts learned. realize; be aware of

Other than the great information he gave, writing this reaction taught me how hard it is to write in this style, let alone talk for a hour. I also realized how much long words I use.

[+] gnaritas|15 years ago|reply
Action/writing/only/syllable/alone have multiple syllables, your post would not compile. Makes what he did very impressive.
[+] shadowsun7|15 years ago|reply
If you don't understand: wait till the 10 minute mark to get what he's trying to do with you.

Truly, truly amazing.

[+] technomancy|15 years ago|reply
This is one of those videos where watching the transcript just doesn't cut it. You really have to hear it to get the full effect of the awkwardness.
[+] sblom|15 years ago|reply
Is anybody else seeing strange, deterministic glitches where some of the video seems to have been snipped out?
[+] ygooshed|15 years ago|reply
"If you give a person a fish, he can eat for a day. If you teach a person to fish, he can eat his whole life long. If you give a person tools, he can make a fishing pole—and lots of other tools! He can build a machine to crank out fishing poles." That's the essence of programming.
[+] MaysonL|15 years ago|reply
If the river runs dry, or gets polluted, knowing how to fish won't help you. What you really need is to learn how to learn: then you can learn how to hunt when fishing doesn't work any more, or to farm when the game animals are all gone. You might even be able to learn how to program.
[+] nickik|15 years ago|reply
The famouse Statemant: "A Language needs to be designed to grow" is great. Gilad Braha (maker of the Newspeak) top this statmend by saying: "Languages need to be designed to take stuff away". Witch is pretty cool but much, much harder to do.
[+] rch|15 years ago|reply
It would be fun use hebrew this way, in a talk about dynamic languages including tuples.

I don't know enough to take it on though, just thinking of that numerology scene from Pi.

[+] dazzawazza|15 years ago|reply
Well worth the effort to watch. It really does make you step back and think about how we define the landscape we work in.