diff options
Diffstat (limited to 'info/digests/tex-implementors/message.03')
-rw-r--r-- | info/digests/tex-implementors/message.03 | 224 |
1 files changed, 224 insertions, 0 deletions
diff --git a/info/digests/tex-implementors/message.03 b/info/digests/tex-implementors/message.03 new file mode 100644 index 0000000000..b6212d6d1b --- /dev/null +++ b/info/digests/tex-implementors/message.03 @@ -0,0 +1,224 @@ +Date: 24 Dec 87 Message No: 003 + +To: TeX implementors and distributors + +From: Barbara Beeton + +Subject: TeX 2.9, DVItype 2.9 + + +I've just received a message from Don Knuth regarding two messages I +forwarded to him from TeXhax; both appeared in issue 103. + +Oliver Schoett, Negative column widths in \halign -- bug or feature? + +Chris Thompson, re the expansion of \csname...\endcsname to be \relax + +The reply: + + Naturally I'm hoping to get the last bug out of TeX before the + bonus amount doubles next week! + + The "bug or feature" discussed by Oliver Schoett is a feature. + I don't want to forbid negative widths, even though they + can be confusing in certain cases. Negative numbers have + proved to be useful even in accounting, so I hesitate to + say that they will never be desired. + + On the other hand, Chris Thompson has found a bug; I can't argue + that the assignment should be global. Ergo, he wins the prize + and TeX moves to Version 2.9. + +Updates from TeX82.BUG, ERRATA.TeX and a list of differences between +TeX.WEB 2.8 and 2.9 are given below. + +A point to ponder: What's the next number after 2.9? + + -------------------- + +A couple of items need to be cleaned up from earlier messages. + +In message 2, the underline _ and assignment := characters were reversed +in item 336 of the extract from TeX82.BUG. This is an unfortunate result +of my having erred in translating the idiosyncratic SAIL character set by +hand instead of by a nice tested canned procedure. 336 is included in +its correct form in the expanded extract below. Apologies, and thanks to +Chris Thompson for pointing it out. + +The TeX bug fixed in version 2.7 (bug 335) has also been fixed in DVItype +version 2.9. A difference list between DVItype 2.8 and 2.9 appears below. + + -------------------- + +Extract from TeX82.BUG + +336. If there are no \patterns and some \lccode is 1 (Breitenlohner, 12Dec87) +@x module 952 +trie_link(0):=0; trie_char(0):=0; trie_op(0):=0; +@y +trie_link(0):=0; trie_char(0):=0; trie_op(0):=min_quarterword; +@z + +337. \csname might encounter undefined_cs in a group (Chris Thompson, 23Dec87) +@x module 372 + begin eqtb[cur_cs]:=eqtb[frozen_relax]; +@y + begin eq_define(cur_cs,relax,256); +@z + +338. (I sincerely hope that there won't be any more) + + -------------------- + +Extracts from ERRATA.TeX (differences as compared with previous version) + +**** FILE PS:<BEETON.BB>ERRATA.NEW.2, 2-3 (1510) +\bugonpage A213, lines 34--35 (12/23/87) + +\ninepoint\noindent +text will be a single control sequence token, defined to be like |\relax| if +its meaning is currently undefined. + +**** FILE PS:<BEETON.BB>ERRATA.TEX.73, 2-2 (1508) +*************** + +**** FILE PS:<BEETON.BB>ERRATA.NEW.2, 3-6 (3474) +\bugonpage B2, line 32 (12/23/87) + +\ninepoint\noindent\hskip10pt +{\bf define} $\\{banner}\equiv\hbox{\tt\char'23}$% +{\tt This\]is\]TeX,\]Version\]2.9\char'23}\quad +**** FILE PS:<BEETON.BB>ERRATA.TEX.73, 3-6 (3290) +\bugonpage B2, line 32 (11/17/87) + +\ninepoint\noindent\hskip10pt +{\bf define} $\\{banner}\equiv\hbox{\tt\char'23}$% +{\tt This\]is\]TeX,\]Version\]2.8\char'23}\quad +*************** + +**** FILE PS:<BEETON.BB>ERRATA.NEW.2, 3-34 (4391) +\bugonpage B156, line 28 (12/23/87) + +\ninepoint\noindent\hskip20pt +{\bf begin }$\\{eq\_define}(\\{cur\_cs},\\{relax},256)$; + +\bugonpage B157, mini-index (12/23/87) + +\eightpoint\noindent +Delete the entries for `\\{eqtb}' and `\\{frozen\_relax}'; replace them +by the following: +\\{eq\_define}: {\bf procedure}, \S227.\par +$\\{relax}=0$, \S207.\par + +**** FILE PS:<BEETON.BB>ERRATA.TEX.73, 3-34 (4207) +*************** + +**** FILE PS:<BEETON.BB>ERRATA.NEW.2, 3-178 (8959) +\bugonpage B551, both columns (12/23/87) + +\eightpoint[Remove `372' from \\{eqtb} and put it into \\{eq\_define}.] + +\bugonpage B554, left column (12/23/87) + +\eightpoint[Remove `372' from \\{frozen\_relax}.] + +**** FILE PS:<BEETON.BB>ERRATA.TEX.73, 3-164 (8413) +*************** + +**** FILE PS:<BEETON.BB>ERRATA.NEW.2, 3-195 (9393) +\bugonpage B567, left column (12/23/87) + +\eightpoint[Insert `372' into \\{relax}.] + +**** FILE PS:<BEETON.BB>ERRATA.TEX.73, 4-1 (8633) +*************** + + -------------------- + +Differences between TeX.WEB versions 2.9 and 2.8 + +**** FILE PS:<1SCRATCH>TEX.WEB.3, 1-26 (1735) +% Version 2.9 makes \csname\endcsname's "relax" local (December 1987). +% A reward of $40.96 will be paid to the first finder of any remaining bug. +**** FILE PS:<TEX.WEB>TEX.WEB.3, 1-27 (1737) +% A reward of $40.96 will be paid to the first finder of any remaining bug. +*************** + +**** FILE PS:<1SCRATCH>TEX.WEB.3, 2-93 (9066) +@d banner=='This is TeX, Version 2.9' {printed when \TeX\ starts} +@ Different \PASCAL s have slightly different conventions, and the present +**** FILE PS:<TEX.WEB>TEX.WEB.3, 1-166 (8922) +@d banner=='This is TeX, Version 2.8' {printed when \TeX\ starts} +@ Different \PASCAL s have slightly different conventions, and the present +*************** + +**** FILE PS:<1SCRATCH>TEX.WEB.3, 26-119 (332316) + begin eq_define(cur_cs,relax,256); + end; {the control sequence will now match `\.{\\relax}'} +**** FILE PS:<TEX.WEB>TEX.WEB.3, 1-7543 (332196) + begin eqtb[cur_cs]:=eqtb[frozen_relax]; + end; {the control sequence will now match `\.{\\relax}'} +*************** + + -------------------- + +Differences between DVItype.WEB versions 2.9 and 2.8 + +**** FILE TX:<BNB.WORK>DVITYPE.WEB.1, 1-14 (823) +% Version 2.9 changes negative scaling as in TeX version 2.7 (November, 1987). +% Here is TeX material that gets inserted after \input webmac +**** FILE TX:<TEX82.SOURCES>DVITYPE.WEB.7, 1-15 (825) +% Here is TeX material that gets inserted after \input webmac +*************** + +**** FILE TX:<BNB.WORK>DVITYPE.WEB.1, 1-33 (1532) + \centerline{(Version 2.9, November 1987)} + \vfill} +**** FILE TX:<TEX82.SOURCES>DVITYPE.WEB.7, 1-32 (1452) + \centerline{(Version 2.8, August 1984)} + \vfill} +*************** + +**** FILE TX:<BNB.WORK>DVITYPE.WEB.1, 1-81 (4122) +@d banner=='This is DVItype, Version 2.9' {printed when the program starts} +@ This program is written in standard \PASCAL, except where it is necessary +**** FILE TX:<TEX82.SOURCES>DVITYPE.WEB.7, 1-80 (4040) +@d banner=='This is DVItype, Version 2.8' {printed when the program starts} +@ This program is written in standard \PASCAL, except where it is necessary +*************** + +**** FILE TX:<BNB.WORK>DVITYPE.WEB.1, 1-1143 (52850) +integer~|z|, which is known to be less than $2^{27}$. +If $|z|<2^{23}$, the individual multiplications $b\cdot z$, $c\cdot z$, +**** FILE TX:<TEX82.SOURCES>DVITYPE.WEB.7, 1-1142 (52768) +integer~|z|, which is known to be less than $2^{27}$. Let $\alpha=16z$. +If $|z|<2^{23}$, the individual multiplications $b\cdot z$, $c\cdot z$, +*************** + +**** FILE TX:<BNB.WORK>DVITYPE.WEB.1, 1-1150 (53311) +or the same quantity minus $\alpha=2^{4+e}z^\prime$ if $a=255$. +This calculation must be +done exactly, for the reasons stated above; the following program does the +**** FILE TX:<TEX82.SOURCES>DVITYPE.WEB.7, 1-1149 (53247) +or the same quantity minus $\alpha$ if $a=255$. This calculation must be +done exactly, for the reasons stated above; the following program does the +*************** + +**** FILE TX:<BNB.WORK>DVITYPE.WEB.1, 1-1166 (53927) +begin alpha:=16; +while z>=@'40000000 do + begin z:=z div 2; alpha:=alpha+alpha; + end; +beta:=256 div alpha; alpha:=alpha*z; +end +**** FILE TX:<TEX82.SOURCES>DVITYPE.WEB.7, 1-1164 (53847) +begin alpha:=16*z; beta:=16; +while z>=@'40000000 do + begin z:=z div 2; beta:=beta div 2; + end; +end +*************** + + +[ end of message 003 ] +------- |