lotus

previous page: 6. What is Literate Programming?
  
page up: Literate Programming FAQ
  
next page: 8.1. CWEB (Important and Actively-Supported Tools - Literate Programming)

7. How do I begin literate programming?




Description

This article is from the Literate Programming FAQ, by David B. Thompson thompson@shelob.ce.ttu.edu with numerous contributions by others.

7. How do I begin literate programming?

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
development style.

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.)

 

Continue to:













TOP
previous page: 6. What is Literate Programming?
  
page up: Literate Programming FAQ
  
next page: 8.1. CWEB (Important and Actively-Supported Tools - Literate Programming)