# TeX

TeX is a typesetting system and contains a built-in macro language, also called TeX.
TeX was developed by Donald E. Knuth from 1977 to 1986 for the typesetting of his
book series *The Art of Computer Programming*.

TeX revolutionized automatic typesetting in many aspects: TeX contains the *Knuth-Plass algorithm*, which divides text into three types of objects: *boxes* as non-scalable content blocks, *glue* for flexible, scalable elements such as white space and *penalties*, which represent places where a line break is undesirable. From this, the algorithm
then develops penalty points (*badness*) which indicate a numerical value of how well a content fits into an available object,
such as a line, a paragraph or a page.

While previously the *First-Fit* approach was used to break lines by lines and the previous lines could no longer
be changed, the *Total-Fit* algorithm took all lines of a paragraph into account and determined the best solution
based on the penalty point system mentioned.

The formula set was improved by configuring the rules for white space and the creation and scaling of formula components such as brackets, limits and integrals in a very finely detailed manner. Unfortunately, certain parameters were permanently engraved into the TeX kernel, while others can be flexibly adjusted.

TeX is open source and has a very rich ecosystem of packages that extend the functionality
of TeX. For example, packages for hyphenation in multilingual texts, for drawing diagrams
or for creating bibliographies are available. The popular *LaTeX* package also extends TeX with a macro language that makes working with TeX beginner-friendly.

Modern TeX engines such as *LuaTeX* and *XeTeX* also support OpenType fonts and Unicode. The lack of support for the output of accessible
PDFs remains a shortcoming, but not for much longer if you look at the developments
of PDF tagging packages. TeX remains a modern and flexible typesetting system that
is superior to many other comparable approaches.