A Fast Generic Sequence Matching
Algorithm (co-authored with former
Rensselaer graduate student Gor Nishanov, now at Microsoft) is a
moderately large example of the literate programming style and its
application in documenting generic software. From the source file we
use Pdfnuweb to generate both the paper's LaTeX source file and all of
the program code described in the paper. For expository purposes, we
use Ada 95 code (in a limited way that makes it comparable to most
pseudo-code languages); production code is in C++. The appendices of
the paper include and document all of the code used in testing and
measuring performance of the various algorithms described in the body
of the paper. The Pdfnuweb source file for the paper, as well as all of
the code generated by applying Pdfnuweb to it, is
available. (The operation
counting components used in some of the performance measurement
programs are not included, but are separately
available, as are the data
files for the English text search
tests and DNA search tests.)
AP students might not want to read the whole paper (it's 62 pages long), but its source file can at least provide examples of how to do most anything you might need to do in (Pdf-)LaTeX and (Pdf-)Nuweb. |