Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.

  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint
Share this Page URL

6. AWK > Language Design

Language Design

Do you have any advice for designers of programming languages?

Al: Always keep your users in mind. Having others say they used your tool to solve a problem is very rewarding. It’s also satisfying having others build on your work to create more powerful tools.

How did Kernighan and Weinberger think about language design?

Al: If I had to choose a word to describe our centering forces in language design, I’d say Kernighan emphasized ease of learning; Weinberger, soundness of implementation; and I, utility. I think AWK has all three of these properties.

How do you make design decisions with utility in mind? How does that affect the way you think about design?

Al: I don’t know whether it’s conscious or unconscious, but certainly the things that survive are things that are useful. It reinforces the notion of Darwinism. You create notions and dictions that are useful for solving problems that you’re interested in, but if they’re not good at solving the problems that others are interested in, they wither away. It’s survival of the fittest ideas that create utility. We don’t keep languages that aren’t useful.


You are currently reading a PREVIEW of this book.


Get instant access to over $1 million worth of books and videos.


Start a Free 10-Day Trial

  • Safari Books Online
  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint