[tex-k] Bug-report for the TeXbook: Not all non-primitive control-sequences are defined, ultimately, in terms of the primitive ones.

Doug McKenna doug at mathemaesthetics.com
Tue Dec 13 19:39:20 CET 2022


Just to add some complexity/nuance to the discussion ...

Is the empty control sequence

    \csname\endsname

constructed from two TeX primitives a TeX primitive or not?

The following typesets "AB" (using plain.tex and pdftex in TL 2021) without error:

\def\test{A\csname\endcsname B}
\test
\end

So either the plain.tex format defines the empty control sequence to do nothing, or the empty control sequence is a primitive that does nothing (otherwise when expanding \test there ought to be an error message for an undefined control sequence whose name has length 0).  But plain.tex doesn't define the empty control sequence, and there's no error.  Therefore \csname\endcsname is a primitive CS only specifiable using two primitive CSes.

Either I'm missing something, or the project of getting the wording precisely and perfectly correct in The TeXbook is doomed.  Or both.


Doug McKenna


More information about the tex-k mailing list.