[texhax] Why is \rm deprecated?

Michael Barr barr at math.mcgill.ca
Tue Aug 18 01:49:36 CEST 2015

The fact that it is is clear.  I would like to know why it is deprecated.  I continue to use it because it is familiar and reduces the number of new things I have to use.  It works well, and in both text and math and, as was clear from my original question, in some situations it works better than the alternatives.  There must be some substantive reason it is deprecated.

In a similar vein, why is it recommended to use $$...$$ for equations and $...$ for displays?  I have defined a single function that lays down a pair of \$ and leaves the cursor between them.  Hit it twice and I am in display mode.  Meanwhile I use \( to as a macro for \left( and similarly for the others.  TeX is tool, not a religion.  Why are people trying to enforce conformity?  Foolish hobgoblins.

Here is a case in point.  In 1998, I was helping a colleague prepare a book that was eventually published in a series by the University of Montreal.  But the series was actually published by the AMS.  Not surprisingly, they required the use of AMSTeX.  Okay, so I was helping him.  His typist had use \over 100 or so times.  \over happens to be a TeX atom, not a macro at all.  But AMS had \let\over\undefined or something of the sort.  Had it been a macro, I could have simply added the definition to his macros.  (I did exactly that when I had a book published in the same series a few years later that had 100 instances of \pmatrix, which AMS had similarly \let \undefined).  This would have been a massive and unpleasant undertaking.  Eventually, I delved deeply enough into the AMS code to figure out how to undo it.   But what was the point.  Someone at AMS explained to me that \over was inconsistent, being the only place in all of TeX (leaving aside related things such as \overwithdelimiter) that used infix notation.  So what?  Somewhere I read or heard Knuth say that when he lectured to mathematicians on an early version of TeX, they actually cheered when he described \over.  As far as I am concerned, undefining a kernel function can be described only as vandalism.  And getting rid of \rm and similar procedures would be nearly as bad.  Maybe I would finally have to learn Word (just kidding).

Michael