Literate Programming Guidelines

Programs developed for courses taught by me are expected to use literate programming techniques. To keep it simple, classes are expected to use noweb. This is available from many mirrors and is about the simplest of the systems. The interest in literate programming is not so much in the actual typesetting (as in CWEB or FWEB), but in documenting the development process and treating a computer project as a true engineering or science lab project. This view means that the programs are turned in as full blown technical reports.

Since we use noweb, you should read Norman Ramsey's Literate-Programming Tools Can Be Simple and Extensible. This paper explains many of the ideas and techniques in literate programming.

My guidelines are still very much under development and open to any and all criticisms.

LaTeX Information

FAQ

A copy of a old FAQ has been made available. The most recent copy is in the newsgroup news.answers.

Other Sites with Ideas on LP

Christopher Lee at Carnegie Mellon

Here is a Web page I wrote: "Literate Programming -- Propaganda and Tools" . This is a summary for my research group. It also has pointers to the literate programming home page, etc...

Marc van Leeuwen at CWI

Some of my ideas about literate programming and how to think about it are written down in the first few sections of the CWEBx manual (CWEBx is my personal adaptation of CWEB).

You will also need to have available these TeX macros to process the manual (using plain TeX).

David Hanson at Princeton

The syllabus and help for Professor David Hanson's graduate system programming course.

Bart Childs

Bart Childs of the Computer Science Deptartment, Texas A&M University, presented a paper at

New Product Announcements


Steve Stevenson
Last modified: Thu Jan 7 14:51:33 EST 1999