Designing and implementing individual routines is not a sequential task: that is, it does not start and stop at the same spots each time. This is especially true of iterative disciplines. Design and coding are two activities; we design then check the design and try to code. This may or may not work.
In this class, we will use a technique called literate programming to document and build code. Literate programming makes it easy to write reasonable English (not comments) interspersed with the code. We will use a tool known as snw for simple noweb. This section explains the basics.