web2c: Introduction

 
 1 Introduction
 **************
 
 This manual corresponds to version 2021 of Web2c, released in May 2021.
 
    "Web2c" is the name of a TeX implementation, originally for Unix, but
 now also running under various operating systems.  By "TeX
 implementation", we mean all of the standard programs developed by the
 Stanford TeX project directed by Donald E. Knuth: Metafont, DVItype,
 GFtoDVI, BibTeX, Tangle, etc., as well as TeX itself.  Other programs
 are also included: DVIcopy, written by Peter Breitenlohner, MetaPost and
 its utilities (derived from Metafont), by John Hobby, etc.
 
    General strategy: Web2c works, as its name implies, by translating
 the WEB source in which TeX is written into C source code.  Its output
 is not self-contained, however; it makes extensive use of many macros
 and functions in a library (the 'web2c/lib' directory in the sources).
 Therefore, it will not work without change on an arbitrary WEB program.
 
    Availability: All of Web2c is freely available--"free" both in the
 sense of no cost (free ice cream) and of having the source code to
 modify and/or redistribute (free speech).  ⇒
 (kpathsea)unixtex.ftp, for the practical details of how to obtain
 Web2c.
 
    Different parts of the Web2c distribution have different licensing
 terms, however, reflecting the different circumstances of their
 creation; consult each source file for exact details.  The main
 practical implication for redistributors of Web2c is that most of the
 executables are covered by the GNU General Public License or GNU Lesser
 General Public License, and therefore anyone who gets a binary
 distribution must also be able to get the sources, as explained by the
 terms of the GPL (<https://gnu.org/licenses/>).  The GPL covers the
 Web2c executables, including 'tex', because the Free Software Foundation
 sponsored the initial development of the Kpathsea library that Web2c
 uses.  The basic source files from Stanford, however, have their own
 copyright terms or are in the public domain, and are not covered by the
 GPL.
 
    History: Tomas Rokicki originated the TeX-to-C system in 1987,
 working from the first change files for TeX under Unix, which were done
 primarily by Howard Trickey and Pavel Curtis.  Tim Morgan then took over
 development and maintenance for a number of years; the name changed to
 Web-to-C somewhere in there.  In 1990, Karl Berry became the maintainer.
 He made many changes to the original sources, and started using the
 shorter name Web2c.  In 1997, Olaf Weber took over, and then in 2006,
 Karl started taking care of it again.  No significant development or
 changes have been needed for many years.  Dozens of other people have
 contributed; their names are listed in the 'ChangeLog' files.
 
    Other acknowledgements by Karl: The University of Massachusetts at
 Boston (particularly Rick Martin and Bob Morris) provided computers and
 ftp access to me for many years.  Richard Stallman at the Free Software
 Foundation employed me while I wrote the original path searching library
 (for the GNU font utilities).  (rms also gave us Emacs, GDB, and GCC,
 without which I cannot imagine developing Web2c.)  And, of course, TeX
 would not exist in the first place without Donald E. Knuth.
 
    Further reading: ⇒References.