TeXhax Digest   Sunday, February 21, 1988   Volume 88 : Issue 18
                     [SCORE.STANFORD.EDU]<TEX.TEXHAX>TEXHAX18.88

Editor: Malcolm Brown

Today's Topics:

     Immoderate notes: brief pause in texhax; issue 17 sliced up
               LaTeX Notes (Re: TeXhax Digest V88 #15)
                           clatex vs. latex
                          a plea for sanity
               Something similar to the dangerous bend
                Problems with VMS version of MetaFont
                       2 C compilations of TeX
                               various
                        UNIX TeX distribution
                          two line footers?
                transferring dvi files across systems
                   \unhbox and discretionary breaks
            Does anyone have a good LN03 mode definition?
               new .bst files in LaTeX style collection
                        TeXhax Digest V88 #16
                       Re: \dotfill in \halign
                            \dotfill again
                Bibtex change files for UNIX (VAX,SUN)
                         Setting undertildes
                          more on extensions
             Public Domain Previewer wanted/and a puzzle
               LaTeX Notes (Re: TeXhax Digest V88 #17)

----------------------------------------------------------------------

Date: 21 Feb 88
From: Malcolm
Subject: Immoderate notes: brief pause in texhax; issue 17 sliced up

%%% Please note I'll be away from Feb 25 to Mar 4 inclusive.  I recommend
%%% that you hold your submissions until I get back; they'll just get
%%% stale and moldy on Score.  Needless to say, there won't be any TeXhax
%%% during that time.  
%%%
%%% Issue 17 was sliced in half by some unkind IBM systems using SMTP. Glenn
%%% Vanderburg informs me that the reason was a line that was longer than
%%% 80 columns got wrapped, which resulted in the next line beginning with
%%% a period.  SMTP though that this meant it was about to get a command. So
%%% it went through the remainder of the digest, looking for a command, which
%%% of course it didn't find -- only more TeXhax.  
%%% 
%%% Please do NOT write to texhax-request for a reissue; sorry, I just won't
%%% have time.  TEX-L has a complete copy and will be happy to provide you
%%% with a new copy.  Malcolm

------------------------------

Date: Mon, 15 Feb 88 15:51:56 pst
From: lamport@src.dec.com (Leslie Lamport)
Subject: LaTeX Notes (Re: TeXhax Digest V88 #15)

Dimitri Vulis writes:

   I tried to use a crazy Hungarian name in tabbing environment in LaTeX:
    \> \> blah blah blah M\'at\'e blah
   For some reason LaTeX moved the 'at' and 'e blah' to the beginning
   of the line! 

The subject line of his message was:

   Accents in tabbing environment in LaTeX

On page 211 of the LaTeX manual is an index entry that reads

   accents, 40
     ...
     in tabbing environment, 181

This would seem to suggest that page 181 just might contain the solution to
his problem.

Leslie Lamport

------------------------------

Subject: clatex vs. latex
Date: Mon, 15 Feb 88 17:09:36 PST
From: Richard Roy <dick@java.Stanford.EDU>

I preliminary comparison of clatex, a C-version of latex generated
using TeX-to-C on tex.web.2.9 and all the latest macros as of 22 Jan 88, 
and the corresponding pascal compiled web-code, on a SUN3-110 with
16Mbytes shows clatex to be approx. 30%-50% faster (depending on you
you score it).

clatex - 
53.7u 1.6s 1:15 73% 80+240k 5+13io 62pf+0w

latex - 
60.9u 2.6s 1:25 74% 96+376k 15+18io 105pf+0w

RR 

------------------------------

Subject: a plea for sanity
Date: Tue, 16 Feb 88 01:36:38 -0500
From: Ken Yap <ken@cs.rochester.edu>

Whatever happened to the effort to standardize on one dvi2ps filter
last year? I see a half a dozen drivers out there all derived from the
original dvi2ps, all with some subset of desirable features. Is there
any hope of standardization?  Would it be possible for each author to
compare his/her driver against the others and send the improvements to
one person who would put it all in one super driver? And then defer in
favour of that super driver when it appears? Here's hoping.

Here is a list of what I consider desirable features in roughly
descending order (mine). Please throw in more comment on this mailing
list.

	Tpic support
	Landscape support
	Horizontal and vertical offsets
	PostScript file inclusion
	Access to PostScript fonts
	Inline PostScript*
	Compact PostScript output
	Fast PostScript output
	Support for any resolution
	Customizable font paths
	Font substitution
	Forward/reverse printing
	Logging
	Debug output

*There are many bells and whistles that could be added here but I think
a driver that generates markers at various points in the output will
make it possible for post-filters to inject almost any PostScript
code.  This can take care of many disparate features, like a draft
header, two-up, manualfeed, etc.  (Such post-filters are useful for
other PostScript output, like that generated by enscript, a ASCII to
PostScript filter).

	Ken
	ken@cs.rochester.edu

------------------------------

Date: Mon, 15 Feb 88 10:49:57 -0100
From: mcvax!ruuinf!piet@uunet.UU.NET (Piet van Oostrum)
Subject: Something similar to the dangerous bend

I believe the 'dangerous bend' sign was designed to stick below the
baseline. You have to check the Metafont Book (somebody borrowed mine).
So you have to lower the box. See also some previous tex-haxes (and TUGBOAT).

------------------------------

Date:	  Tue, 16 Feb 88 08:11:54 PST
From:     KARNEY%PPC.MFENET@NMFECC.ARPA
Subject:   Problems with VMS version of MetaFont

You can get rid of the warning message about the non-initialization of
ready_already by including
    @x
    @!ready_already:integer; {a sacrifice of purity for economy}
    @y
    @!ready_already:[static]integer:=0; {a sacrifice of purity for economy}
    @z
in your change file.

A previous version of the Pascal compiler had a bug which also necessitates
making a couple of variables static.  The required change is
    @x
    @!smooth_bot,@!smooth_top:0..move_size; {boundaries of smoothing}
    @y
    @!smooth_bot,@!smooth_top:[static] 0..move_size; {boundaries of smoothing}
    @z
The current version of the compiler (version 3.6) doesn't need this change.

    Charles Karney
    Plasma Physics Laboratory   Phone:   +1 609 243 2607
    Princeton University        MFEnet:  Karney@PPC.MFEnet
    PO Box 451                  ARPAnet: Karney%PPC.MFEnet@NMFECC.ARPA
    Princeton, NJ 08543-0451    Bitnet:  Karney%PPC.MFEnet@ANLVMS.Bitnet

CC:
        PADWA@HUSC3.BITNET
        TeXhax@Score.Stanford.EDU
        KARNEY

------------------------------

Date: Tue, 16 Feb 88 08:40:54 PST
From: mackay@june.cs.washington.edu (Pierre MacKay)
Subject: 2 C compilations of TeX

In a recent communication to TeXhax, Common TeX was declared a clear winner
against TeX-to-C on the grounds of a marginally faster processing of a
test file (we may disregard the third-place pascal compilation.)
It seemed that there could be a question of whether the playing field was
absolutely level but, assuming that it was, there are still reasons to
view the verdict rather carefully. Common TeX is a carefully hand-coded
rewrite of the pascal part of Donald Knuth's WEB code, and in the course of
that rewrite has drifted a fair distance from the WEB.  TeX-to-C is directly
interpreted by way of the pascal brick (does anyone know who first used
that description of tangle output?) and retains a recognizeable kinship with
the original source.  In addition, TeX-to-C retains the string pool, and
TeX-to-C is showing that it can pass trip on an ever wider variety of
systems.  None of these details is trivial.

1.  Association with the WEB.  During the past week, I spent a maximum of 6
hours, most of it on the text-editor, in the creation of a Cxet.ch change
file for the compilation of TeX-XeT through TeX-to-C.  Throughout this
effort I had *Computers and Typesetting* Volume B, open as a reference.
and could work through the modules sequentially.  (I was, in essence, merging
the system-independent part of Don Knuth's WAITS change file with the
Ctex.ch file).  I do not wish to think about how long it would take to
recode without the benefit of Tim Morgan's interpreter.  TeX-XeT is not
alone among extended versions of TeX.  JTeX (Japanese) is put together
through the mechanism of the change file, Michael Ferguson's multi-lingual
TeX is probably done the same way, as is the Finnish accent-stripping TeX
and at least one commercial multilingual TeX.  Users of the change-file
mechanism can contemplate the rush of small improvements from Version 2.1
through 2.9 with no particular uneasiness, the more so since recompilation
under TeX-to-C is substantially faster than monolithic pascal compilations.

2.  The string pool.  The is the most underrated part of the whole WEB system.
Don Knuth introduces the string pool mechanism [4.38] as merely a way to
avoid the deficiencies in string handling in pascal, but it could be argued
any large software system ought to adopt it.  The advantages of having all
possible messages located in a file separate from the the rest of the
code can easily be seen.  In a monolingual environment, it allows for
detailed editing of the messages without recompilation, and in a
multi-lingual environment, it is an absolute virtue.  Editing a string pool
isn't the easiest thing in the world (you have to watch out for terminal
spaces in the character count), but it is a lot easier than editing an
entire source file.

3.  The trip test.  I do not know what the present status of Common TeX
is with regard to the trip test.  In the last version I saw, the rewording of
a considerable number of messages made it very difficult to sift out 
significant from insignificant differences, and gave evidence that some
operations were done in a different order in Common TeX from the order
given in the WEB source. The copy of version 2.1 I got never completed the
test.  TeX-to-C completes the  test with ease.  In every compilation in
which I have got a working initex at all, the associated triptex passes the
trip test.

4.  Speed.  I suspect that Common TeX will always have a fine edge here, and
one of the reasons is the use of the string pool.  TeX-to-C is still being
adjusted and refined, and will probably close up the small gap somewhat,
but it is likely that hand-coded efficiencies will always be a bit better
than machine coded efficiencies.  To get that edge, you have to give up the
close filiation from the WEB sources, and from the WEB listing, and the
string pool mechanism.  In most environments, I would argue that those
features are more valuable than raw speed.


						Pierre A. MacKay
						TUG Site Coordinator for
						Unix-flavored TeX

------------------------------

Date:     Tue, 16 Feb 88 17:43:57 GMT
From:     Dr R M Damerell (RHBNC) <damerell@NSS.Cs.Ucl.AC.UK>
Subject:  various

1. Pretty-printing TANGLE's output. (A.Woo, Texhax 88/11). I think the 
official line is that you are not allowed to want to do this, you should 
Weave it instead. I am currently working on a sort of PP; it will run on
VMS (I hope) in about 3 months. One simple thing you could do right now
is alter TANGLE to break lines after every semicolon. I know that isnt 
anywhere near "pretty", but might do what you need.

2. Dotfill. (P. Flynn, TEXHAX 88/12). Please may I suggest the WEBMAC.TEX
macros? I think the one you seem to need is   \Z  , nearly at the end of the
file.

3. Bug sanctuary. A mistake I find myself making with distressing frequency
is that of inadvertently using a global variable locally in a procedure. 
Please does anybody know of a cross-referencer that can be made to flag
all uses of global variables inside a PASCAL procedure? The VMS cross-ref
flags all uses of all variables; thats not really useful as the signal-
to-noise ratio is so poor.

4. Another sanctuary. This is prompted by J.Leichter (Texhax 88/05) who 
found un-initialised variables in PXtoPK. Every VMS  Change file I have seen
for TEX-related software initialises the  XORD  array incorrectly. This 
has 256 elements and only the first 128 get values.


5. Converting DVI files (CCZDAO, Texhax 88.14) Converting binary files to
another machine's system is a dreadfully difficult job, not worth trying
unless you are compelled. It will almost certainly be far easier to re-run
the TeX source. If you cant, there are 3 utilities that might help you
find what is wrong

1. DVITYPE
2. $DIRECTORY/FULL
3. $DUMP

Reading DUMP files is somewhat of a black art. By default each line of output
contains 4 or 8 blocks of hex digits. These must be read right to left, 
but within each block the digits must be read left to right. I think this is
because VMS packs bytes into a word in Small-End order(least significant 
first) and DVI files use Big-End order. Also: variable-length records 
are preceded by a byte count & depending on the qualifiers, DUMP 
***sometimes*** shows them.

I suggest that you examine the last block of the file to see if it is
correctly padded. (? cant remember, but I think it should be filled with 
HEX DF  )  Good luck, you'll need it, 

Mark

------------------------------

Date: Tue, 16 Feb 88 09:57:31 PST
From: Phil Farrell <farrell@erebus.Stanford.EDU>
Subject: UNIX TeX distribution

Here is a simple question from a new reader ...
Whom do I contact to order a tape with the complete UNIX TeX distribution
(for a Vax running 4.3BSD UNIX)?

------------------------------

From: Tim Finin <finin@PRC.Unisys.COM>
Date: Tue, 16 Feb 88 16:07:57 EST
Subject: two line footers?

I have a problem that someone suggested I send to this mailing list.
I'm writing a document using LaTeX and need to have non-standard
headers and footers.  In particular, every page needs a constant,
centered string as the header and a two line footer.  The footer
should be composed of a centered page number on the first line and a
centered constant string on the second.  I've had no luck in mixing in
TeX commands to do this in the context of LaTex.  Any suggestions? Tim

------------------------------

Date: Tue 16 Feb 88 14:49:41-PST
From: Barbara Beeton <BEETON@Score.Stanford.EDU>
Subject: transferring dvi files across systems

at the american math society, we've had some experience transferring
dvi files (and other binaries -- .tfm, etc.) from "other" systems
(tops-20, ibm pc) to the vax/vms.  we have found it necessary to pad
the files to a multiple of 512 bytes; the padding character is octal 337.
					-- barbara beeton

------------------------------

Date:         Tue, 16 Feb 1988 17:57 EST
From: Jim Walker <N410109%univscvm.BITNET@forsythe.stanford.edu>
Subject:      \unhbox and discretionary breaks

As far as I can tell by experimentation, in text produced by \unhbox,
explicit hyphens are never recognized as locations of discretionary
breakpoints.  Why is this?  Is it considered a bug?
 -- Jim Walker, University of South Carolina

------------------------------

Date: Tue, 16 Feb 88 21:33:15 PST
From: robinson%SOE.Berkeley.EDU@jade.berkeley.edu (Michael Robinson)
Subject: Does anyone have a good LN03 mode definition?

I need to make a set of fonts for our LN03, and I would like to use
a tried and true mode definition.  Can anyone help me out?

     -Michael

Michael Robinson                USENET:  ucbvax!dewey.soe.berkeley.edu!robinson
                                     ARPA: robinson@dewey.soe.berkeley.edu

------------------------------

Subject: new .bst files in LaTeX style collection
Date: Wed, 17 Feb 88 10:41:32 -0500
From: Ken Yap <ken@cs.rochester.edu>

		WARNING WARNING WARNING

To: latex-style subscribers

The files acm.bst, ieeetr.bst, siam.bst and apalike.bst are updated
versions that require BibTeX 0.99b to work.

	Ken

PS: I'm expecting more new style files soon so I'll post a full update
shortly. Remember you can always fetch 00index and 00directory to see
the current state of things.

------------------------------

Date: Wed, 17 Feb 88 07:53:31 PST
From: mackay@june.cs.washington.edu (Pierre MacKay)
Subject: TeXhax Digest V88 #16

bibtex.BSD4_n.ch is available on june.cs.washington.edu, in ~ftp/pub

You may have to adjust the alpha character in the version number, depending
on which new bibtex you got.  (The newest is 99c)

						Pierre A. MacKay
						TUG Site Coordinator for
						Unix-flavored TeX

------------------------------

From: Julian Bradfield <jcb%lfcs.edinburgh.ac.uk@NSS.Cs.Ucl.AC.UK>
Date: Wed, 17 Feb 88 16:01:01 GMT
Subject: Re: \dotfill in \halign

[ Reprise: the problem was to produce a table of the form
Title 1 ......................................................... Author 1
second title .................................................... second Author
third ........................................................... and last
]
The idea for the following solution is 
due to Duncan Baillie (dmb@lfcs.ed.ac.uk) :

\halign to \hsize
{#\dotfill\tabskip=0pt plus1fill&#\tabskip=0pt&#\hfil\cr
\cr\noalign{\vskip-\baselineskip}
Title 1\span& Author 1\cr
second title\span& second Author\cr
third\span& and last\cr}
\bye

------------------------------

Mail-From: BEETON created at 17-Feb-88 09:02:57
Date: Wed 17 Feb 88 09:02:57-PST
From: Barbara Beeton <BEETON@Score.Stanford.EDU>
Subject: \dotfill again

i recommend a look at the texbook, appendix d, pp. 392-394.
this technique handles multi-line entries automatically.
much more powerful than \halign, and it gives you better control
over baselines.
					-- barbara beeton

------------------------------

Subject: Bibtex change files for UNIX (VAX,SUN)
Date: Wed, 17 Feb 88 09:22:37 PST
From: Richard Roy <dick@java.Stanford.EDU>

I got one just a few days ago from june.cs.washington.edu (P. Mackay)
and it worked on bibtex.web 0.99c which I got from score the same day.
It compiled and ran on my SUN-3 110 OS3.4 no problem.  Note that the
style files on rochester are inconsistent.  Some are for the NEW
bibtex, others for the OLD bibtex 0.98i and earlier.  THEY ARE NOT
COMPATIBLE!!! I have mentioned this to O. Patashnik and K. Yap and the
current thought is to put a note to this effect in the 00index and
00readme files in public/latex-style on cayuga.cs.rochester.edu.  
RR

------------------------------

Date: Wed, 17 Feb 88 14:18:28 EST
From: "Doug Arnold" <dna%emmy.umd.edu@eneevax.umd.edu>
Subject: Setting undertildes

     Mike Meyer (mikem@andrew.cmu.edu) asks about setting undertildes.
I make frequent use of undertildes (or undertwiddles, or, as one
journal editor termed them "inferior waves") as well double
undertildes.  Many of my papers start with a bunch of macros setting
them up.  I've done them in plain TeX (using macros like
"\def\ut#1{\rlap{${}_{_{\sim}}$}{#1}}"), but I much prefer the results
using AMSTeX's \underset.  Here is an example:

\input amstex
\def\ut#1{\underset\sim\to{\botsmash{#1}}}
\def\utt{\underset\sim\to}  % \operatorname doesn't like \botsmash
\def\dut#1{\underset\approx\to{\botsmash{#1}}}
\def\grad{\operatorname{g\utt{ra}d}}
\def\curl{\operatorname{\utt{curl}}}
\def\div{\operatorname{div}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\document
$$
\div \ut\psi = \psi_{1,1} + \psi_{2,2}, \qquad
\curl r = \dut\chi \grad r, \qquad
\dut\chi = \pmatrix 0 & -1 \\ 1 & \phantom{-} 0 \endpmatrix
$$
\bye


  -- Doug Arnold
       dna@emmy.umd.edu
       dna%emmy.umd.edu@eneevax.umd.edu
       na.arnold@score.stanford.edu

------------------------------

Date: Wed, 17 Feb 88 14:01:10 EST
From: "Karl Berry." <karl%umb.edu@RELAY.CS.NET>
Subject: more on extensions

Changing TeX will allow, say, `latex paper', without any paper.
As things stand now, nothing should prevent you from being
Consistently throughout TeX (and Metafont) the extension is
`.tex' is never insisted on; if you supply an extension,
that one will be used.

So, if you want to a different extension on your LaTeX files,
fine. Just type in the extension you want. Four extra characters.

Taking the default extension from a parameter, as William LeFebvre
suggests, is probably the best idea of all. Maybe in TeX92.

Karl.
karl@umb.edu
able to type `latex paper.ltx', or whatever you like. 

------------------------------

Date:         Wed, 17 Feb 88 18:21:47 EST
From: Ajit Ranade <SO405000%BROWNVM.BITNET@forsythe.stanford.edu>
Subject:      Public Domain Previewer wanted/and a puzzle

Where can I find a public domain previewer for PC-TeX on my IBM PS/2?
I am using ver 1.5 with pixel files 1200 thru 2488 (ie dpi 240 to 570(?)).
I am at a Bitnet site, so no easy FTP possible.

%%%%%%%%%%

And now the puzzle (whose answer I don't know)-
Without using Metafont, how does one generate the symbol which looks like
\succsim (of AMSTeX) except that the \sim part of the symbol should be
inclined diagonally upwards i.e. \succ shouldn't sit \atop on \sim.
Same applies to \ge where the horizontal part under > (greater than) shouldn't
be \atop 'ed but sloping upwards i.e. parallel to the lower segment of >.

------------------------------

Date: Wed, 17 Feb 88 17:44:08 pst
From: lamport@src.dec.com (Leslie Lamport)
Subject: LaTeX Notes (Re: TeXhax Digest V88 #17)

This is in response to Julian Bradfield's "(Flame)", which I won't
quote in full.  On the matter of nonindented first paragraphs, he
writes 

   I should be obliged if he would explain it, instead of preaching from
   on high

I'm sorry if I've given the impression of "preaching from on high"; the
only knowledge I will claim to have is of my own ignorance on the
subject--which seems to be a greater claim than can; be made by many
TeXHaXers.  

I have refrained from trying to explain document-style decisions
because I don't feel qualified to do so.  However, this question has
arisen so often, that I will give what I think are the reasons for the
convention.  I do this reluctantly, knowing that a competent designer
might find my comments naive and all wrong.  Anyway, one first must
understand the purpose of paragraph indentation, which is to inform the
reader of the beginning of a new paragraph.  Since the reader is
already informed of this by the section heading, indenting the opening
paragraph is redundant.  Why is it bad?  My belief is that the function
of the heading is to introduce the following text.  To emphasize this
function, the design should visualy tie the heading to the following
text and separate it from the preceding text.  That's why one usually
finds more space above the heading than after it.  (A typical mistake
made by computer hackers is to make the two spaces the same.)  If the
section heading is flush left, as in the LaTeX styles, it is more
strongly tied visually to the following paragraph if there is no
paragraph indentation.

   Dr Lamport is that he seems always to assume that those who disagree
   with him are wrong, ignorant and stupid

I can't recall anyone disagreeing with me in TeXHaX. Many people don't
like the way LaTeX does some things, which I don't regard as
disagreeing with me.  There are lots of things LaTeX does that I don't
like.  Anyone seeking perfection had better not try writing TeX macros.
I find questions of right and wrong to be irrelevant in this context, I
try to ignore stupidity (I've found little of it in TeXHaX), and I try
to correct ignorance when I can.  

   I would ask Dr Lamport to be less abrasive in his public utterances

There are many things I would rather be doing than answering queries
about LaTeX.  I wrote LaTeX in my spare time because I wanted a set of
TeX macros for my own use and decided to put in a little (hah!) extra
effort so others could use them.  I haven't yet taken Knuth's step of
refusing to discuss LaTeX at all, though that is very tempting.
Instead, I try to respond to all queries, and even to answer some
flames.  However, I do try to respond as quickly as I can.  I
appologize if my responses are abrasive, but I hope that an abrasive
response is preferable to none.

   extreme ugliness is a sufficient condition for unreadability

I have yet to see any evidence that a document is harder to read
because it is ugly rather than because it violates principles of good
design.  I have, however, seen a number of cases in which documents
were made harder to read by being made more beautiful.  (See my AMS
article reprinted in TUGboat for one example.)

Leslie Lamport


------------------------------
%%%
%%% subscriptions, address changes to: texhax-request@score.stanford.edu
%%%     please send a valid arpanet address!!
%%%
%%% BITNET distribution: subscribe by sending the following
%%%   line to LISTSERV@TAMVM1.BITNET:
%%%       SUBSCRIBE TEX-L <your name>
%%%
%%% submissions to: texhax@score.stanford.edu
%%%
%%%\bye
%%%
------------------------------

End of TeXhax Digest
**************************
-------