This article is from the Literate Programming FAQ, by David B. Thompson email@example.com with numerous contributions by others.
I've given considerable thought as to what should be in this section
of the FAQ. This is probably the most important section of this
document. My suggestion is that you review Section ``Supported
Tools'' and Section ``Unsupported Tools'' to choose a system
appropriate for the kind of development you do. Then, use the manual
that accompanies the system to determine how it complements your
Both Eric van Ammers, Section ``van Ammers'', and Norman Ramsey,
Section ``Ramsey'', wrote some thoughts on literate programming. I've
included these thoughts in Section ``Other Opinions'' below.
I started with a pretty-printing tool, Section ``cnoweb'', as a test
of the utility of interweaving significant documentation with code.
My experience is detailed in Section ``Thompson''.
Wayne Sewell's (1989) Weaving a Program: Literate Programming in WEB.
Van Nostrand Reinhold, ISBN 0-442-31946-0 (pbk). This book focuses on
using Knuth's web system.
I've read D. E. Knuth's collection of articles (1992) entitled
Literate Programming. Center for the Study of Language and
Information, Stanford University, ISBN 0-937073-80-6 (pbk). This book
gives insight into Knuth's thoughts as he developed the web system of
literate programming (and TeX for typesetting). However, it does not
document methods for literate programming.
Some talk exists in the newsgroup/mailing list for a Usenet University
course in literate programming. I'm sure discussion of this topic
will be welcomed. (1Feb2000: Note this thread has been dead for a
long, long time. I wish someone would pick it up.)