TeX is a typesetting system written by Donald E. Knuth, who says in the Preface to his book on TeX (see books about TeX) that it is “intended for the creation of beautiful books - and especially for books that contain a lot of mathematics”. (If TeX were only good for mathematical books, much of its use nowadays would not happen: it's actually a pretty good general typesetting system.)
Knuth is Emeritus Professor of the Art of Computer Programming at Stanford University in California, USA. Knuth developed the first version of TeX in 1978 to deal with revisions to his series “the Art of Computer Programming”. The idea proved popular and Knuth produced a second version (in 1982) which is the basis of what we use today.
Knuth developed a system of
“literate programming” to write TeX,
and he provides the literate (WEB) source of TeX free of charge,
together with tools for processing the
web source into something
that can be compiled and something that can be printed; there is (in
principle) never any mystery about what TeX does. Furthermore, the
WEB system provides mechanisms to port TeX to new operating
systems and computers; and in order that one may have some confidence
in the ports, Knuth supplied a test by
means of which one may judge the fidelity of a TeX system. TeX
and its documents are therefore highly portable.
For the interested programmer, the distribution of TeX has some fascination: it's nothing like the way one would construct such a program nowadays, yet it has lasted better than most, and has been ported to many different computer architectures and operating systems - the sorts of attributes that much modern programming practice aims for. The processed “readable” source of TeX the program may be found in the TDS structured version of the distribution.