Web es un sistema de programación informática creado por Donald E. Knuth como la primera implementación de lo que él llamó " programación alfabetizada ": la idea de que uno podría crear software como obras literarias , al incrustar el código fuente dentro de un texto descriptivo, en lugar de lo contrario (como es práctica común en la mayoría de los lenguajes de programación ), en un orden que sea conveniente para la exposición a los lectores humanos, en lugar de en el orden demandado por el compilador . [1]
Web consta de dos programas secundarios: TANGLE, que produce código Pascal compilable a partir de los textos fuente, y WEAVE, que produce documentación bien formateada e imprimible utilizando TeX .
CWEB es una versión de Web para el lenguaje de programación C , mientras que noweb es una herramienta de programación alfabetizada independiente, que está inspirada en la Web (como se refleja en el nombre) y que es independiente del lenguaje .
Los programas más importantes escritos en la Web son TeX y Metafont . Las distribuciones modernas de TeX utilizan otro programa, Web2C, para convertir el código fuente de la Web a C.
A diferencia de la mayoría de los demás generadores de documentación , que relegan la documentación a los comentarios, el enfoque WEB consiste en escribir un artículo para documentar la creación del código fuente. Al igual que los artículos de TeX, el código fuente se divide en secciones según el flujo de documentación. Por ejemplo, en CWEB, las secciones de código se entremezclan perfectamente en la línea de argumentación. [2]
CWEB es un sistema de programación informática creado por Donald Knuth y Silvio Levy como continuación del sistema de programación basado en WEB de Knuth , utilizando el lenguaje de programación C (y en menor medida los lenguajes de programación C++ y Java ) en lugar de Pascal .
Al igual que WEB, consta de dos programas principales:
#line
pragmas para que cualquier advertencia o error haga referencia a la fuente .w.