Next: Question 2 Up: Introduction and Editorial Top: Top

[1] What is FWEB?

For a thorough discussion of the WEB system, I refer to the extensive literature, collected in Nelson Beebe's bibliography (at ftp.math.utah.edu in directory pub/tex/bib). For pointers, see the General FAQ by Dave Thompson.

The WEB system.

In D.E. Knuth's [author of the original WEB, coauthor of CWEB] own words, [M-2.3]

``The philosophy behind WEB is that an experienced system programmer, who wants to provide the best possible documentation of his or her software products, needs two things simultaneously: a language like TeX for formatting, and a language like C for programming.* Neither type of language can provide the best documentation by itself; but when both are appropriately combined, we obtain a system that is much more useful than either language separately.

The structure of a software program may be thought of as a web that is made up of many interconnected pieces. To document such a program we want to explain each individual part of the web and how it relates to its neighbours. The typographic tools provided by TeX (1) give us an opportunity to explain the local structure of each part by making that structure visible, and the programming tools provided by languages such as C or Fortran make it possible for us to specify the algorithms formally and unambigously. By combining the two, we can develop a style of programming that maximizes our ability to perceive the structure of a complex piece of software, and at the same time the documented programs can be mechanically translated into a working software system that matches the documentation.''

FWEB - a multilingual WEB variant.

FWEB which is being supported and upgraded by John Krommes is a substantial extension of CWEB, FWEB supports C, C++, Fortran, Fortran90, Ratfor, and TeX i.e. writing TeX macros (style files). It runs on most platforms: VMS, PC, UNIX, and pretty much anything that the GNU C compiler (GCC) is supported for.

[Archive-Date: Wed, 22 Jul 1992 18:20:45 CDT]

JAK [M-1]: ``The principal design contributions to this version of WEB are In addition, many miscellaneous details have been changed and a variety of convenience features has been added.''

---------- Footnotes ----------

(1) [which itself is written in Knuth's original Pascal WEB -MS]

(2) [Levy and Knuth are the authors of the C variant of WEB -MS]