[texhax] learning tex vs latex

Uwe Lück uwe.lueck at web.de
Wed Oct 28 16:47:20 CET 2009


At 03:03 28.10.09, bill lam wrote:
>I'm unfamiliar with both tex and latex. Should my time better spent on
>learning tex or latex?  Presumably learning curve of tex is even more
>steeper than that of latex, but I saw some forum members said they use
>plain tex.  I would like to know before deciding,
>
>1. Do common packages such as supertabular and cjk work on tex?
>2. Some said latex is actively developing while tex is not, is that
>    true?
>3. What will be the advantage of plain tex over latex?

LaTeX is a script-like user interface to the binary TeX program, i.e., 
Knuth's versions up to TeX3, or extensions of the latter, most notably: 
e-TeX, pdfTeX, XeTeX.

Plain TeX is kind of an alternative user interface to TeX, but with a few 
exceptions, it is just a part of LaTeX. ... "in a silent way", however: 
plain TeX code is present in the LaTeX source latex.ltx, but usual LaTeX 
documentation doesn't mention it. Plain TeX and LaTeX are called "formats".

When you are writing `tex', it is not quite clear whether you are referring 
to the binary or to the format Plain TeX. This confusion seems to lurk in 
other postings.

Books like The TeXbook or TeX for the Impatient describe the binary engine 
as well as the Plain TeX format, both is missing in usual LaTeX documentation.

If you start learning TeX from the TeXbook or so, you will need quite a 
while until you can typeset a paper or a thesis. If you start with some 
small LaTeX introduction, you can typeset a paper or thesis almost 
immediately. At least you get a proper looking output for mere text soon. 
You can typeset one or a few pages of an introduction for your first work 
within a few days. While you are proceeding and want to add some more 
special features, you can go on reading extra documentation, each bit just 
for the next task.

This is the basic idea of LaTeX! Get something proper without learning much!

>3. What will be the advantage of plain tex over latex?

After a while, you may observe behaviour of LaTeX that seems strange to 
you. LaTeX moreover, gives very limited access to the features of the TeX 
engine. This is just due to the effiency idea of LaTeX. When most urgent 
things have been done and you can afford spending some time learning about 
what is behind LaTeX and what TeX really offers, you may buy a book like 
The TeXbook. This may help you in understanding difficulties with LaTeX, 
why you need some extra packages for certain fine tuning, you may then mix 
Plain TeX code into your LaTeX code for fine tuning, you can write your own 
LaTeX packages getting more control of TeX ...

>1. Do common packages such as supertabular and cjk work on tex?

They work when you use the TeX engine with the LaTeX format. They usually 
don't with Plain TeX only (running the TeX engine). miniltx.tex can extend 
Plain TeX so some more packages that usually are "LaTeX" packages can be used.

>2. Some said latex is actively developing while tex is not, is that true?

At 06:35 28.10.09, Pierre MacKay wrote:
>It is nonsense to speak of LaTeX as developing, while TeX is not.  LaTeX 
>is a macro package built on top of TeX.  It can not "develop" in the sense 
>of altering the basic engine, because Donald Knuth has taken great care to 
>ensure archival compatibility for all input files that ever ran in TeX3.

Well, some call obvious truths "nonsense", maybe thinking `don't waste your 
time with saying things that everybody knows' (not saying this outright 
instead of just thinking, probably they consider it too obvious to waste 
their time with also saying it).

Knuth's TeX3 engine does not develop anymore, due to Knuth's decision.

At 06:35 28.10.09, Pierre MacKay wrote:
>If a package requires something that cannot be run in the basic TeX3 
>engine, it may not be called TeX.

What may not be called TeX?

I mentioned extensions of TeX like e-TeX, pdfTeX, XeTeX. There are LaTeX 
packages that require running such an extension of the TeX program. Their 
development may not have stopped as definitely as TeX's, but this point is 
quite irrelevant.

>2. Some said latex is actively developing while tex is not, is that true?

Considering the confusion of `TeX' with `plain TeX', a point in saying this 
is that many people work on improving LaTeX by either improving the 
standard macros or by writing own LaTeX packages for new features, and by 
improving their own packages. There seems to be almost no development of 
Plain TeX in this sense.

However, I tend to say it is "nonsense" to consider this point, or it is 
irrelevant. At least, it is not a reason not to learn Plain TeX when you 
master LaTeX. In order to improve LaTeX or use of some TeX binary engine, 
you must understand Plain TeX, the TeX engine, considerable parts of the 
TeXbook, even if it is "not actively developing" in some sense.

At 06:35 28.10.09, Pierre MacKay wrote:
>My basic problem with LaTeX is that it has a genius for making simple 
>things complex, and does so at every possible instance.
[...]
>The fine tuning that is possible in a macro package based on plain TeX may 
>be possible in LaTeX, but LaTeX, for its own protection, shuts off many 
>avenues for such fine tuning, or at best, disguises them so thoroughly 
>that you will have real difficulty discovering how to walk down them.
>
>The model for LaTeX has become the "black box", all too like Microsoft.
>
>If you are satisfied with LaTeX formating, you should probably go with 
>it.  I think it is often slovenly, and though I am assured that, since 
>LaTeX is ultimately built on top of plain TeX, it would be possible to get 
>rid of the slovenliness, I have never thought that I had the time to put 
>into that.
>
>Finally, the advantage of plain.tex over LaTeX is that you remain in 
>control.  With LaTeX, you are left in a position that is far too like what 
>Microsoft Word offers you: "We know better than you do what you 
>want"---again with the important proviso that you are always free to read 
>all the source macros of LaTeX, but that is never the case for the source 
>code of Word.

I agree, but still learning using the TeX engine should start with LaTeX; 
later a user may learn about TeX and Plain TeX. I have never heard that 
when a TeX user starts learning LaTeX, she must swear never to touch the 
TeXbook.

Cheers,

     Uwe.



More information about the texhax mailing list