[texhax] Obsolete \centerline command used in amsbook class (Uwe L?ck)

Michael Barr barr at math.mcgill.ca
Sun Sep 23 14:50:11 CEST 2012


I would like to comment on Uwe Lueck's comments on the use of plain and 
primitive tex commands in a latex document.  I once asked Leslie Lamport 
how he felt about that (this was at least 20 years ago) and his reply was, 
in effect, why not.

Yesterday, I had occasion to deal with a paper that had a number of 
\newcommand{s} of the form
\newcommand{\un}[1]{\underline{#1}}
which isn't wrong, but a simple
\let\un\underline
would do the same thing more efficiently.  One thing that really irritates 
me about amstex is that they have undefined some tex primitives.  One is 
\over (and its relatives).  The late Michael Downes once explained to me 
that this was because at the time it was being compiled tex didn't know 
whether to do in in display, text, or script mode.  So \over in an amstex 
document will lead to an error.  So how is frac implemented?  Well, I dug 
down once and my recollection is that first they \let something else be 
\over, then redefine \over to give an error message and then implement 
\frac using the something else!  At best all you can say is that some 
future implementation of some tex-like program might eliminate \over on 
the grounds of efficiency.  But maybe not.  They might be loathe to render 
millions of older papers obsolete.

About ten years ago I published a book that had several dozen matrices.  I 
used the plain \matrix{...} which works perfectly well.  I never thought 
that the AMS would publish it but that's who did.  I can imagine some poor 
copy editor changing all the \matrix{...} to 
\begin{matrix}...\end{matrix}.  Oh, I guess some script might do it 
automatically.

And don't get me started on how much more functional \def is than 
\newcommand.  I authored some diagram-drawing macros (a front end to 
xy-pic, actually) some years ago and they would have been impossible to do 
using \newcommand.  But when I use \def, someone is sure to comment that 
that is not latex.  No, it is not, but when did latex turn into a 
religion?

Which is not to say that latex doesn't provide lots of functionality that 
plain doesn't.  But it remains, like the underlying tex engine, just a 
tool.

Michael


-- 
The modern conservative is engaged in one of man's oldest exercises in
moral philosophy--the search for a superior moral justification
for selfishness.  --J.K. Galbraith


More information about the texhax mailing list