Further Reading

Donald Knuth’s article Literate Programming (Knuth 1984) describes the main ideas behind literate programming as well as his web programming environment. The seminal TEX typesetting system was written with web and has been published as a series of books (Knuth 1986; Knuth 1993a). More recently, Knuth has published a collection of graph algorithms in literate format in The Stanford GraphBase (Knuth 1993b). These programs are enjoyable to read and are excellent presentations of their respective algorithms. The Web site www.literateprogramming.com has pointers to many articles about literate programming, literate programs to download, and a variety of literate programming systems; many refinements have been made since Knuth’s original development of the idea.

The only other literate programs we know of that have been published as books are the implementation of the lcc compiler, which was written by Christopher Fraser and David Hanson and published as A Retargetable C Compiler: Design and Implementation (Fraser and Hanson 1995), and Martin Ruckert’s book on the mp3 audio format, Understanding MP3 (Ruckert 2005).


  1. Fraser, C., and D. Hanson. 1995. A Retargetable C Compiler: Design and Implementation. Reading, Massachusetts: Addison-Wesley.
  2. Knuth, D. E. 1984. Literate programming. The Computer Journal 27, 97–111. Reprinted in D. E. Knuth, Literate Programming, Stanford Center for the Study of Language and Information, 1992.
  3. Knuth, D. E. 1986. MetaFont: The Program. Reading, Massachusetts: Addison-Wesley.
  4. Knuth, D. E. 1993a. TEX : The Program. Reading, Massachusetts: Addison-Wesley.
  5. Knuth, D. E. 1993b. The Stanford GraphBase. New York: ACM Press and Addison-Wesley.
  6. Reinhard, E., G. Ward, P. Debevec, S. Pattanaik, W. Heidrich, and K. Myszkowski. 2010. High Dynamic Range Imaging: Acquisition, Display, and Image-Based Lighting. San Francisco: Morgan Kaufmann.
  7. Ruckert, M. 2005. Understanding MP3. Wiesbaden, Germany: GWV-Vieweg.