2

Reading about TeX/LaTeX online, I'm a little confused as to what it is- isn't it a language? Wikipedia calls is it a typesetting system- and to make matters worse, if I want to use LaTeX, I need to download something like MikTeX which is also called a typesetting system. Why isn't LaTeX just called a programming language, and why isn't there just one installer to download, like with Python?

David Carlisle
  • 757,742
  • 1
  • The second says that TeX is a program- I don't understand this. Isn't that like calling python a program? –  Jan 04 '15 at 20:18
  • python is a program, isn't it? It's the language interpreter, and the language is called Python. :) – Paulo Cereda Jan 04 '15 at 20:21
  • Oh, is that what they mean when they says TeX is a program? –  Jan 04 '15 at 20:22
  • 5
    tex is a program, TeX is a language. When you have a support ecosystem around all these things, you get a system. :) – Paulo Cereda Jan 04 '15 at 20:23
  • @PauloCereda Thank you! Also for the first related post, is TeX somehow larger, or more scrambled than things like python or java? It seems like there's a lot more scattered stuff associated with TeX... –  Jan 04 '15 at 20:26
  • @AlanMunn I thought I did read it- I'll look again. –  Jan 04 '15 at 20:26
  • @Anthony Sorry my reference wasn't very clear. The relevant answer in the linked question is here. – Alan Munn Jan 04 '15 at 20:29
  • LaTeX is not really a typesetting system. It is more like one layer of a typesetting system which consists of a set of core commands/stuff and a bunch of enhancements contributed by a whole bunch of different people. The core commands/stuff in turn depend on all the lower level stuff: TeX. And there are other sets of things (alternatives to LaTeX) which build on this lower level in different ways. Mostly, when you typeset a document, you are using a lot of different things - some higher level, some lower level; some core, some contributed. 'System' is a bit misleading. There are... – cfr Jan 04 '15 at 21:12
  • many different systems. But calling it all a 'bunch of stuff for typesetting documents and doing related tasks' doesn't have quite the same ring to it. The bunch of stuff is organised more-or-less systematically, but it is a kind of ordered chaos rather than a system. That is, a 'system' sounds to me as if it is organised 'top-down'. Whereas TeX-stuff organises itself 'bottom-up'. [This is probably the least helpful comment I have ever written, although the competition is admittedly fierce!] – cfr Jan 04 '15 at 21:15
  • Pendantically, there's more than one Python installer, too. I use regular Python for sysadmin-type work, and Anaconda for numerical work. Same idea as MiKTeX versus TeX Live on Windows. – Mike Renfro Jan 04 '15 at 21:31
  • To follow up on that analogy, TeX is a programming language and you can problably even find a plain TeX exe, but - as Python - it is more useful if you have MiKTeX (the installer, not unlike pip) and LaTeX (an extensive library, not unlike modules from PyPI). – AndreKR Jan 05 '15 at 02:35

1 Answers1

7

TeX is too many things to be anything less than a system. It consist of (this and even more):

  • programming languages and file type specs: TeX, METAFONT (METAPOST), bib, bst, dvi, ...
  • a compiler (tex), actually, more compilers
  • typesetter, since the output of the compiler is not just a sequence of the language primitives, but as well the output laid out.
  • forks of the compiler (and even of the language): LuaTeX, XeTeX, ConTeXt, ...
  • new fonts developed with the system: Computer Modern, Latin Modern, TeX Gyre, ...
  • auxiliary tools: bibtex, biber, pdftk
  • thousands of packages doing various stuff, not only in the TeX language, but in many other languages around.

And that all is installed in your computer when you get TeXLive or MikTeX. No less general word than "system" can comprise all of this.

yo'
  • 51,322