It's amazing how many different and dissimilar components go into a TeX distribution like TeX Live:<p>- At the base, there is Donald Knuth's program `tex`, itself written in a strange language (WEB) that is essentially an ad-hoc macro-expansion system (not used by many others, and not even by Knuth today, who prefers CWEB), and compiles (via `tangle`) to a dialect/version of Pascal (“Pascal-H”) for which a compiler hasn't existed for years. [It also "compiles" (via `weave`) to the printed book <i>TeX: The Program</i>]<p>- Then there is LaTeX, an elaborate set of macros written originally by Leslie Lamport (another Turing award winner) and later by a team, to be interpreted by the TeX program, which was never designed by its original creator for such elaborate programming.<p>- There are entire new programs (aka TeX engines) like pdfTeX and XeTeX, created by editing the original `tex.web` in different directions.<p>- There are the binaries of all these programs, compiled using `web2c`, a program written solely for converting all these WEB programs written in (basically) Pascal into <i>C</i> code, which is neither an arbitrary Pascal-to-C converter nor even an arbitrary WEB-to-C converter.<p>- There is LuaTeX, a manual <i>rewrite</i> of TeX in C, embedding a Lua interpreter and adding many hooks and extensions.<p>- There are thousands of macro packages written by thousands of people of varying levels of skill and foresight, on top of TeX, LaTeX, and other macro packages themselves: essentially everything on CTAN (which was inspiration for Perl's CPAN, and ultimately many languages' package repositories like Python's PyPI etc.)<p>And all this without even mentioning ConTEXt, Metafont, MetaPost, BibTeX, Kpathsea, various assorted utilities, graphics drivers…