Web (programming system)
programming language

Web, traditionally styled WEB, is a computer programming system created by Donald Knuth as the first implementation of what he called "literate programming": his idea that one could create software as works of literature, by embedding source code in descriptive text, rather than the reverse. Unlike standard programming practice which relegates documentation to comments, the WEB approach is to write an article to document the making of the source code, and to include all the source code in that article, so as to be compilable therefrom.
Philosophy
The common practice in most programming languages is that the primary text is source code, optionally supplemented by descriptive text in the form of comments. Knuth proposed that making the descriptive text primary was putting things in an order more convenient for human readers, rather than the order demanded by compilers.
Much like TeX articles, the Web source text is divided into sections according to documentation flow. For example, in CWEB, code sections are seamlessly intermixed in the line of argumentation.
Implementations
The original WEB system depends on Pascal and comprises two programs:
TANGLE, which produces compilable Pascal code from the source texts, and
WEAVE, which through the use of TeX produces nicely-formatted, printable documentation from the same source texts.
Others:
CWEB (below) is a version of Web for the C programming language, while
noweb is a separate literate programming tool, which is inspired by Web (as reflected in the name) and which is language agnostic.
The most significant programs written in Web are TeX and Metafont. Modern TeX distributions however use another program called Web2C to convert Web source to C.
CWEB
CWEB is a computer programming system created by Donald Knuth and Silvio Levy as a follow-up to Knuth's WEB literate programming system, using the C programming language (and to a lesser extent the C++ and Java programming languages) instead of Pascal.
The public source identifies “Web (programming system)” as programming language. This brief keeps that definition visible, then builds a research path around programming, system and language.
Why this record matters
A short description can identify a subject without explaining its stakes. For “Web (programming system)”, the useful work is to connect “programming language” to the records capable of establishing context and consequence.
Vocabulary and entity names are the principal evidence signals here, because they determine the precision of every later search. The source revision retrieved here is dated Nov 18, 2025. The linked authority identifier is Q1141484. The Library of Congress control number is sh85145873. 1 of 1 selected statements include explicit references; 0 carry qualifiers and 0 use preferred rank.
A concise general-reference account can conceal disagreements about scope, terminology or the weight assigned to individual sources. The source lead contains qualifying language; that uncertainty should survive quotation, summary and reuse. Authority statements aid reconciliation but still require their own references, qualifiers and ranks to be checked.
How to read it
Use the entry as an orientation point, then follow its citations and revision history. Names, dates and institutional relationships should be checked against the original record.
- Subject orientation
- Search vocabulary
- Locating named sources
The closest primary source, responsible institution and strongest cited specialist reference.
Three-step research path
- Establish the record: confirm the title “Web (programming system)”, its source revision and the description used here.
- Expand the search: follow Web (programming system) primary sources, Web (programming system) archive and programming research across catalogues and specialist indexes.
- Test the account: compare the strongest cited source with the responsible institution’s current record and note any disagreement.
Questions for further research
- Which source most directly establishes the central claim about “Web (programming system)”?
- Which cited source is closest to the event, object or claim?
- Which institution is responsible for the underlying evidence?
Search terms from this dossier
This entry incorporates text from “Web (programming system)” on English Wikipedia. Contributors are listed in the page history. Text is available under the Creative Commons Attribution-ShareAlike 4.0 License. Selected authority identifiers and statements are retrieved from Wikidata under CC0; their references and qualifiers remain part of the verification path.