summaryrefslogtreecommitdiff
path: root/info/digests/tex-implementors/028
diff options
context:
space:
mode:
Diffstat (limited to 'info/digests/tex-implementors/028')
-rw-r--r--info/digests/tex-implementors/028705
1 files changed, 705 insertions, 0 deletions
diff --git a/info/digests/tex-implementors/028 b/info/digests/tex-implementors/028
new file mode 100644
index 0000000000..a8091fcaad
--- /dev/null
+++ b/info/digests/tex-implementors/028
@@ -0,0 +1,705 @@
+Date: 19 Mar 90 Message No: 028
+
+To: TeX implementors and distributors
+
+From: Barbara Beeton
+
+Subject: Updates to TeX.WEB, MF.WEB, GFtoDVI, et al.
+
+
+New versions of TeX.WEB, MF.WEB and other updates have been installed
+at labrea, as Dan Kolkowitz has reported. For the benefit of those who
+may not be able to ftp these files easily, this message contains some
+of the more important details:
+
+ New files at labrea since 3 January 91
+ Changes to the errata list (ERRATA.SIX)
+ Addenda to TeX82.BUG as of 13 March 91
+ Addenda to MF84.BUG as of 13 March 91
+ Differences between TeX.WEB 3.1 and 3.14 (as of 18 March 1991)
+ Differences between TeX.WEB 3.0 and 3.1 (as of 21 September 1990)
+ Differences between MF.WEB 2.0 and MF.WEB 2.7 (as of 13 March 1991)
+ Cosmetic change, GFTODVI.WEB, ver 3.0
+
+Differences in TeX.WEB are provided in two parts since the details of the
+update from version 3.0 to 3.1 was never reported in one of these messages.
+In fact, both TeX.WEB and MF.WEB have been updated twice, with only one
+version change, since the previous update. The most recent changes were,
+as Don Knuth says in the prose at the top, only cosmetic; cosmetic changes
+do not usually appear in the bug listings, but should generally be made to
+the main WEB files anyhow in order to keep in synch.
+
+This is the last time that it will be possible to provide the difference
+listings in this form. These difference listings were prepared with a
+TOPS-20 utility, and the Math Society's DEC-20 is being unplugged and
+de-installed tomorrow. We now have a couple of Unix workstations, and
+the Unix differencing utility seems to be the best replacement (as soon
+as I learn how to use it). Although the VAX/VMS DIFF utility does a good
+job of identifying differences, it adds a line number to each difference
+line, often resulting in lines of more than 80 characters in length; not
+a robust format for sending in e-mail across random network gateways.
+
+As usual, there have been a number of updates to this mailing list since
+the last time I sent a message directly, so if everyone receiving this
+message could please acknowledge it, that will help keep the list in
+good shape.
+
+
+########################################################################
+
+New files at labrea.stanford.edu since 3 Jan 91
+
+/tex:
+-rw-r--r-- 1 468 fsuser 52165 Mar 13 17:03 DIFFS.Mar91
+-rw-r--r-- 1 468 fsuser 0 Mar 13 17:24 tex.log
+
+/tex/OLD.pre-Mar91:
+total 7
+drwxr-xr-x 2 468 fsuser 512 Mar 13 17:14 cweb
+drwxr-xr-x 2 468 fsuser 512 Mar 13 17:19 errata
+drwxr-xr-x 6 468 fsuser 512 Mar 13 17:14 local
+drwxr-xr-x 2 468 fsuser 512 Mar 13 17:18 mf
+drwxr-xr-x 2 468 fsuser 512 Mar 13 17:16 mfware
+drwxr-xr-x 2 468 fsuser 512 Mar 13 17:18 tex
+drwxr-xr-x 2 468 fsuser 512 Mar 13 17:14 tugboat
+
+/tex/bibtex:
+-rw-rw-r-- 1 weening ftp 27577 Mar 15 15:45 btxmac.tex
+
+/tex/errata:
+-rw-rw-rw- 1 468 fsuser 15838 Mar 15 21:40 errata.six
+-rw-r--r-- 1 468 fsuser 2528 Mar 13 17:05 errata.tex
+-rw-r--r-- 1 468 fsuser 79228 Mar 13 17:05 mf84.bug
+-rw-r--r-- 1 468 fsuser 295236 Mar 13 17:05 tex82.bug
+
+/tex/latex:
+-rw-rw-r-- 1 root ftp 15834 Jan 14 18:58 addendum.tex
+-r--r--r-- 1 root fsuser 40243 Feb 8 21:02 latex.bug
+-r--r--r-- 1 root fsuser 286412 Feb 8 21:02 latex.tex
+-r--r--r-- 1 root fsuser 48458 Feb 8 21:02 lplain.tex
+-r--r--r-- 1 root fsuser 48804 Feb 8 21:03 splain.tex
+
+/tex/local/cm:
+-rw-rw-rw- 1 468 fsuser 3561 Mar 15 21:44 ccmic9.mf
+-rw-rw-rw- 1 468 fsuser 217 Mar 15 21:44 odigs.mf
+
+/tex/local/lib:
+-rw-r--r-- 1 468 fsuser 3133 Mar 13 17:08 art.mf
+-rw-rw-r-- 1 468 fsuser 33699 Mar 13 17:09 gkpmac.tex
+-rw-r--r-- 1 468 fsuser 1581 Mar 13 17:09 list.tex
+-rw-r--r-- 1 468 fsuser 2179 Mar 13 17:09 llist.tex
+-rw-r--r-- 1 468 fsuser 263 Mar 13 17:09 oneone.mf
+-rw-r--r-- 1 468 fsuser 8240 Mar 13 17:09 picmac.tex
+
+/tex/local/mf:
+-rw-r--r-- 1 468 fsuser 691 Mar 13 17:09 plain.log
+
+/tex/local:/tex/local/mfware:
+-rw-r--r-- 1 468 fsuser 28547 Mar 13 17:10 gftodvi.ch
+
+/tex/local/tex:
+-rw-r--r-- 1 468 fsuser 53657 Mar 13 17:10 initex.ch
+
+/tex/mf:
+-rw-r--r-- 1 468 fsuser 916840 Mar 13 17:06 mf.web
+-rw-r--r-- 1 468 fsuser 938679 Mar 13 17:06 mfbook.tex
+-rw-r--r-- 1 468 fsuser 18238 Mar 5 23:56 trapman.tex
+
+/tex/mfware:
+-rw-r--r-- 1 468 fsuser 186545 Mar 13 17:06 gftodvi.web
+
+/tex/tex:
+-rw-r--r-- 1 468 fsuser 1025435 Mar 18 21:20 tex.web
+-rw-r--r-- 1 468 fsuser 1381907 Mar 13 17:07 texbook.tex
+-rw-r--r-- 1 468 fsuser 2438 Mar 13 17:07 trip.fot
+-rw-r--r-- 1 468 fsuser 182701 Mar 13 17:07 trip.log
+-rw-r--r-- 1 468 fsuser 18025 Mar 13 17:07 trip.typ
+-rw-r--r-- 1 468 fsuser 12930 Mar 13 17:08 tripin.log
+
+/tex/tugboat:
+-rw-r--r-- 1 468 fsuser 30903 Mar 11 19:44 guidepro.tex
+-rw-r--r-- 1 468 fsuser 14810 Mar 11 19:44 ltugboat.sty
+-rw-r--r-- 1 468 fsuser 3785 Mar 11 19:44 ltugproc.sty
+-rw-r--r-- 1 468 fsuser 25567 Mar 11 19:44 tugboat.com
+-rw-r--r-- 1 468 fsuser 66791 Mar 11 19:44 tugboat.sty
+-rw-r--r-- 1 468 fsuser 8901 Mar 11 19:44 tugproc.sty
+
+
+########################################################################
+
+Addenda to TeX82.BUG as of 13 March 91
+
+-------------
+Note: When making change 376, I forgot to delete the redundant
+code in module 883, and I should also have changed the name of that
+module. These cosmetic changes (and some changes to the comments)
+were made in version 3.14; but TeX 3.14 is functionally
+equivalent to TeX 3.1 and only a tiny bit faster.
+
+-------------
+393. The absolutely final change (to be made after my death)
+@x module 2
+@d banner=='This is TeX, Version 3.14' {printed when \TeX\ starts}
+@y
+@d banner=='This is TeX, Version $\pi$' {printed when \TeX\ starts}
+@z
+My last will and testament for TeX is that no further changes be made
+under any circumstances. Improved systems should not be called simply `TeX';
+that name, unqualified, should refer only to the program for which I have
+taken personal responsibility. -- Don Knuth
+
+
+########################################################################
+
+Addenda to MF84.BUG as of 13 March 91
+
+-------------
+557. The absolutely final change (to be made after my death)
+@x module 2
+@d banner=='This is METAFONT, Version 2.7' {printed when \MF\ starts}
+@y
+@d banner=='This is METAFONT, Version $e$' {printed when \MF\ starts}
+@z
+My last will and testament for METAFONT is that no further changes be made
+under any circumstances. Improved systems should not be called simply
+`METAFONT'; that name, unqualified, should refer only to the program for which
+I have taken personal responsibility. -- Don Knuth
+
+
+########################################################################
+
+Changes to the errata list (ERRATA.SIX)
+
+[ This is NOT a difference list. ]
+
+\def\rhead{Bugs in {\tensl Computers \& Typesetting, 1990}}
+
+ ...
+
+\noindent This is a list of all corrections made to {\sl Computers \&
+Typesetting}, Volumes A,~C, and E\null, between 30 September 1989 (when
+the revisions for \TeX\ Version 3.0 and \MF\ Version 2.0 were made) and
+December 31, 1990.
+
+ ...
+
+\bugonpage A137, lines 2 and 3 from the bottom (11/9/90)
+
+{\eightssi
+\rightline{and you shouldn't even be reading this manual,}
+\rightline{which is undoubtedly all English to you.}
+}
+
+\bugonpage A141, line 15 from the bottom (10/18/90)
+
+\tenpoint\noindent
+Thus if you type `|$1\over2$|' (in a text) you get $1\over2$, namely style
+$S$ over style~$S'$;\cutpar
+
+ ...
+
+\bugonpage C11, replacement for second quotation at bottom of page (9/27/90)
+
+\begingroup
+ \eightpoint \let\tt=\ninett
+ \baselineskip 10pt
+ \parfillskip \z@
+ \interlinepenalty 10000
+ \leftskip \z@ plus 40pc minus \parindent
+ \let\rm=\eightss \let\sl=\eightssi
+ \everypar{\sl}
+ \def\par{\ifhmode\/\endgraf\fi}\obeylines
+To anyone who has lived in a modern American city (except Boston)
+at least one of the underlying ideas of ^{Descartes}' analytic geometry
+will seem ridiculously evident. Yet, as remarked,
+it took mathematicians all of two thousand years
+to arrive at this simple thing.
+\author ERIC TEMPLE ^{BELL}, {\sl Mathematics: Queen and Servant of %
+ Science\/} (1951) % p123
+
+\endgroup
+
+\bugonpage C262, lines 19--21 (11/9/90)
+
+\ninepoint\noindent
+for commonly occurring idioms.
+For example, `{\bf stop} |"hello"|' displays `|hello|' on the terminal and waits
+until \<return> is typed.
+\beginlines
+|def |^|upto|| = step 1 until enddef; def |^|downto|| = step -1 until enddef;|
+\endgroup
+
+ ...
+
+\bugonpage C329, line 325 (12/29/90)
+
+\ninepoint\noindent
+which can be used to specify a nonstandard file area
+or directory name for the gray\cutpar
+
+ ...
+
+\bugonpage C347, left column (9/27/90)
+
+\eightpoint\noindent
+Bell, Eric Temple, 11.
+
+\bugonpage C349, left column (9/27/90)
+
+\eightpoint\noindent
+Descartes, Ren\'e, 6, 11, 19.
+
+\bugonpage C356, right column (9/27/90)
+
+\eightpoint\noindent
+[remove the entry for Rex Stout.]
+
+\bugonpage C358, right column (9/27/90)
+
+\eightpoint\noindent
+[remove the entry for Nero Wolfe.]
+
+
+########################################################################
+
+Differences between TeX.WEB 3.1 and 3.14 (as of 18 March 1991)
+
+;COMPARISON OF TX:<TEX>TEX-31.WEB.1 AND TX:<TEX.NEW>TEX-314.WEB.1
+;OPTIONS ARE /E /3
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-43 (2896)
+
+% A reward of $327.68 will be paid to the first finder of any remaining bug,
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-42 (2894)
+% Version 3.14 was a cosmetic change for new Volume B (February 1991).
+
+% A reward of $327.68 will be paid to the first finder of any remaining bug,
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-183 (10169)
+@d banner=='This is TeX, Version 3.1' {printed when \TeX\ starts}
+
+@ Different \PASCAL s have slightly different conventions, and the present
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-184 (10241)
+@d banner=='This is TeX, Version 3.14' {printed when \TeX\ starts}
+
+@ Different \PASCAL s have slightly different conventions, and the present
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-1008 (48300)
+(If the \PASCAL\ compiler does not support non-local |@!goto|, the
+@^system dependencies@>
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-1009 (48373)
+(If the \PASCAL\ compiler does not support non-local |@!goto|\unskip, the
+@^system dependencies@>
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-4856 (215250)
+ {that's |text(font_id_base+equiv(n))|}
+end
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-4857 (215330)
+ {that's |font_id_text(equiv(n))|}
+end
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-8209 (361639)
+ if (cur_cs=0)and@|
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-8210 (361714)
+@^recursion@>
+ if (cur_cs=0)and@|
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-9674 (418737)
+
+@p procedure conditional;
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-9675 (418825)
+@^recursion@>
+
+@p procedure conditional;
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-14080 (611160)
+
+The box returned by |clean_box| is ``clean'' in the
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-14082 (611263)
+@^recursion@>
+
+The box returned by |clean_box| is ``clean'' in the
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-14175 (615068)
+
+The second pass eliminates all noads and inserts the correct glue and
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-14178 (615186)
+@^recursion@>
+
+The second pass eliminates all noads and inserts the correct glue and
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-14760 (639342)
+ cur_style:=save_style; @<Set up the values...@>;
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-14765 (639477)
+@^recursion@>
+ cur_style:=save_style; @<Set up the values...@>;
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-15438 (669367)
+but we clear |aux| to zero just to be tidy.
+
+@p @t\4@>@<Declare the procedure called |init_span|@>@t@>@/
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-15444 (669517)
+but we clear them to zero just to be tidy.
+
+@p @t\4@>@<Declare the procedure called |init_span|@>@t@>@/
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-17263 (749496)
+@<Destroy the |t| nodes following |q|, but save the last one if it is
+ a necessary kern; make |r| point to the following node@>;
+if post_break(q)<>null then @<Transplant the post-break list@>;
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-17269 (749645)
+@<Destroy the |t| nodes following |q|, and
+ make |r| point to the following node@>;
+if post_break(q)<>null then @<Transplant the post-break list@>;
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-17277 (749957)
+ if not is_char_node(s) then if next_break(cur_p)<>null then
+ if cur_break(next_break(cur_p))=s then s:=r;
+ r:=link(s); link(s):=null;
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-17283 (750062)
+ r:=link(s); link(s):=null;
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-17624 (764945)
+hyphen can be considerably more complex than that. For example, suppose that
+\.{abcdef} is a word in a font for which the only ligatures are \.{b\!c},
+\.{c\!d}, \.{d\!e}, and \.{e\!f}. If this word is to permit hyphenation
+between \.b and \.c, the two patterns with and without hyphenation are
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-17628 (764937)
+hyphen can be considerably more complex than that. Suppose
+\.{abcdef} is a word in a font for which the only ligatures are \.{b\!c},
+\.{c\!d}, \.{d\!e}, and \.{e\!f}. If this word permits hyphenation
+between \.b and \.c, the two patterns with and without hyphenation are
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-19977 (866921)
+hyphenation. Again we have an implied ``cursor`` between characters
+|cur_l| and |cur_r|. The main difference is that the |lig_stack| can now
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-19981 (866890)
+hyphenation. Again we have an implied ``cursor'' between characters
+|cur_l| and |cur_r|. The main difference is that the |lig_stack| can now
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-21590 (929845)
+begin get_token; {|get_x_token| would fail on \.{\\ifmmode}!}
+if (cur_cmd=math_shift)and(mode>0) then @<Go into display math mode@>
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-21594 (929814)
+begin get_token; {|get_x_token| would fail on \.{\\ifmmode}\thinspace!}
+if (cur_cmd=math_shift)and(mode>0) then @<Go into display math mode@>
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-22413 (960656)
+by making its width zero.
+
+@<Squeeze the equation as much as possible...@>=
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-22417 (960635)
+by causing its width to be zero.
+
+@<Squeeze the equation as much as possible...@>=
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-23152 (987557)
+|info(par_shape_ptr)| can hold any positive~|n| such |get_node(2*n+1)|
+doesn't overflow the memory capacity.
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-23156 (987543)
+|info(par_shape_ptr)| can hold any positive~|n| for which |get_node(2*n+1)|
+doesn't overflow the memory capacity.
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-23239 (990682)
+if scan_keyword("at") then @<Put the (positive) `at' size into |s|@>
+@.at@>
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-23243 (990673)
+if scan_keyword("at") then @<Put the \(p)(positive) `at' size into |s|@>
+@.at@>
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-23254 (991149)
+@ @<Put the (positive) `at' size into |s|@>=
+begin scan_normal_dimen; s:=cur_val;
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-23258 (991144)
+@ @<Put the \(p)(positive) `at' size into |s|@>=
+begin scan_normal_dimen; s:=cur_val;
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-23484 (998722)
+@<Change the case of the token in |p|, if a change is appropriate@>=
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-23487 (998719)
+@^data structure assumptions@>
+
+@<Change the case of the token in |p|, if a change is appropriate@>=
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-24036 (1017828)
+init for k:=0 to 255 do trie_used[k]:=min_quarterword;@+tini
+k:=256;
+while j>0 do
+ begin undump(0)(k-1)(k); undump(1)(j)(x);@+init trie_used[k]:=qi(x);@+tini
+ j:=j-x; op_start[k]:=qo(j);
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-24041 (1017859)
+init for k:=0 to 255 do trie_used[k]:=min_quarterword;@+tini@;@/
+k:=256;
+while j>0 do
+ begin undump(0)(k-1)(k); undump(1)(j)(x);@+init trie_used[k]:=qi(x);@+tini@;@/
+ j:=j-x; op_start[k]:=qo(j);
+***************
+
+**** FILE TX:<TEX>TEX-31.WEB.1, 1-24175 (1023526)
+
+This program doesn't bother to close the input files that may still be open.
+**** FILE TX:<TEX.NEW>TEX-314.WEB.1, 1-24179 (1023563)
+@^recursion@>
+
+This program doesn't bother to close the input files that may still be open.
+***************
+
+
+########################################################################
+
+Differences between TeX.WEB 3.0 and 3.1 (as of 21 September 1990)
+
+;COMPARISON OF TX:<BNB>TEX-30.WEB.1 AND TX:<BNB>TEX-31.WEB.1
+;OPTIONS ARE /E /3
+
+**** FILE TX:<BNB>TEX-30.WEB.1, 1-42 (2816)
+
+% A reward of $327.68 will be paid to the first finder of any remaining bug,
+**** FILE TX:<BNB>TEX-31.WEB.1, 1-41 (2814)
+% Version 3.1 fixed nullfont, disabled \write{\the\prevgraf} (September 1990).
+
+% A reward of $327.68 will be paid to the first finder of any remaining bug,
+***************
+
+**** FILE TX:<BNB>TEX-30.WEB.1, 1-68 (4055)
+\def\drop{\kern-.1667em\lower.5ex\hbox{E}\kern-.125em} % middle of TeX
+\catcode`E=13 \uppercase{\def E{e}}
+\def\\#1{\hbox{\let E=\drop\it#1\/\kern.05em}} % italic type for identifiers
+
+\outer\def\N#1. \[#2]#3.{\MN#1.\vfil\eject % begin starred section
+**** FILE TX:<BNB>TEX-31.WEB.1, 1-69 (4135)
+
+\outer\def\N#1. \[#2]#3.{\MN#1.\vfil\eject % begin starred section
+***************
+
+**** FILE TX:<BNB>TEX-30.WEB.1, 1-186 (10278)
+@d banner=='This is TeX, Version 3.0' {printed when \TeX\ starts}
+
+@ Different \PASCAL s have slightly different conventions, and the present
+**** FILE TX:<BNB>TEX-31.WEB.1, 1-183 (10169)
+@d banner=='This is TeX, Version 3.1' {printed when \TeX\ starts}
+
+@ Different \PASCAL s have slightly different conventions, and the present
+***************
+
+**** FILE TX:<BNB>TEX-30.WEB.1, 1-8472 (372855)
+begin nest[nest_ptr]:=cur_list; p:=nest_ptr;
+while abs(nest[p].mode_field)<>vmode do decr(p);
+scanned_result(nest[p].pg_field)(int_val);
+end
+
+@ @<Fetch the |par_shape| size@>=
+**** FILE TX:<BNB>TEX-31.WEB.1, 1-8469 (372746)
+if mode=0 then scanned_result(0)(int_val) {|prev_graf=0| within \.{\\write}}
+else begin nest[nest_ptr]:=cur_list; p:=nest_ptr;
+ while abs(nest[p].mode_field)<>vmode do decr(p);
+ scanned_result(nest[p].pg_field)(int_val);
+ end
+
+@ @<Fetch the |par_shape| size@>=
+***************
+
+**** FILE TX:<BNB>TEX-30.WEB.1, 1-10358 (446031)
+begin if input_ln(cur_file,false) then do_nothing;
+firm_up_the_line;
+**** FILE TX:<BNB>TEX-31.WEB.1, 1-10356 (446011)
+begin line:=1;
+if input_ln(cur_file,false) then do_nothing;
+firm_up_the_line;
+***************
+
+**** FILE TX:<BNB>TEX-30.WEB.1, 1-10362 (446183)
+first:=limit+1; loc:=start; line:=1;
+end
+**** FILE TX:<BNB>TEX-31.WEB.1, 1-10361 (446173)
+first:=limit+1; loc:=start;
+end
+***************
+
+**** FILE TX:<BNB>TEX-30.WEB.1, 1-10737 (464779)
+font_bc[null_font]:=1; font_ec[null_font]:=0;
+**** FILE TX:<BNB>TEX-31.WEB.1, 1-10736 (464760)
+bchar_label[null_font]:=non_address;
+font_bchar[null_font]:=non_char; font_false_bchar[null_font]:=non_char;
+font_bc[null_font]:=1; font_ec[null_font]:=0;
+***************
+
+**** FILE TX:<BNB>TEX-30.WEB.1, 1-11673 (506824)
+if at all. Like |nop| commands and \\{xxx} commands, font definitions can
+appear before the first |bop|, or between an |eop| and a |bop|.
+**** FILE TX:<BNB>TEX-31.WEB.1, 1-11674 (506916)
+if at all. Like |nop| commands, font definitions can
+appear before the first |bop|, or between an |eop| and a |bop|.
+***************
+
+**** FILE TX:<BNB>TEX-30.WEB.1, 1-18295 (794479)
+is |trie_op_ptr|. If the table overflows, the excess ops are ignored.
+Statistics printed during a dump make it possible for users to tell
+if this has happened.
+
+@<Glob...@>=
+**** FILE TX:<BNB>TEX-31.WEB.1, 1-18296 (794550)
+is |trie_op_ptr|.
+
+@<Glob...@>=
+***************
+
+**** FILE TX:<BNB>TEX-30.WEB.1, 1-24730 (1045367)
+ {disable \.{\\prevdepth}, \.{\\spacefactor}, \.{\\lastskip}}
+cur_cs:=write_loc; q:=scan_toks(false,true); {expand macros, etc.}
+**** FILE TX:<BNB>TEX-31.WEB.1, 1-24729 (1045294)
+ {disable \.{\\prevdepth}, \.{\\spacefactor}, \.{\\lastskip}, \.{\\prevgraf}}
+cur_cs:=write_loc; q:=scan_toks(false,true); {expand macros, etc.}
+***************
+
+
+########################################################################
+
+Differences between MF.WEB 2.0 and MF.WEB 2.7 (as of 13 March 1991)
+
+;COMPARISON OF TX:<TEX.MF>MF-20.WEB.1 AND TX:<TEX.NEW>MF-27.WEB.1
+;OPTIONS ARE /E /3
+
+**** FILE TX:<TEX.MF>MF-20.WEB.1, 1-22 (1390)
+% A few "harmless" optimizations have been made without changing versions.
+
+% A reward of $81.92 will be paid to the first finder of any remaining bug,
+% except bugs introduced after August 1989.
+**** FILE TX:<TEX.NEW>MF-27.WEB.1, 1-22 (1390)
+% Version 2.7 made consistent with TeX version 3.1 (September 1990).
+% A few "harmless" optimizations have been made without changing versions.
+
+% A reward of $163.84 will be paid to the first finder of any remaining bug,
+% except bugs introduced after August 1989.
+***************
+
+**** FILE TX:<TEX.MF>MF-20.WEB.1, 1-153 (8073)
+@d banner=='This is METAFONT, Version 2.0' {printed when \MF\ starts}
+
+@ Different \PASCAL s have slightly different conventions, and the present
+**** FILE TX:<TEX.NEW>MF-27.WEB.1, 1-154 (8144)
+@d banner=='This is METAFONT, Version 2.7' {printed when \MF\ starts}
+
+@ Different \PASCAL s have slightly different conventions, and the present
+***************
+
+**** FILE TX:<TEX.MF>MF-20.WEB.1, 1-2995 (123730)
+fractions. Using the recurrence $x_n=(x_{n-55}-x_{n-31})\bmod 2^{28}$,
+we generate batches of 55 new $x_n$'s at a time by calling |new_randoms|.
+**** FILE TX:<TEX.NEW>MF-27.WEB.1, 1-2996 (123801)
+fractions. Using the recurrence $x_n=(x_{n-55}-x_{n-24})\bmod 2^{28}$,
+we generate batches of 55 new $x_n$'s at a time by calling |new_randoms|.
+***************
+
+**** FILE TX:<TEX.MF>MF-20.WEB.1, 1-3005 (124184)
+and then it will fetch |randoms[j_random]|.
+
+@d next_random==if j_random=0 then new_randoms
+**** FILE TX:<TEX.NEW>MF-27.WEB.1, 1-3006 (124255)
+and then it will fetch |randoms[j_random]|. The |next_random| macro
+actually accesses the numbers backwards; blocks of 55~$x$'s are
+essentially being ``flipped.'' But that doesn't make them less random.
+
+@d next_random==if j_random=0 then new_randoms
+***************
+
+**** FILE TX:<TEX.MF>MF-20.WEB.1, 1-11094 (468472)
+numerators and denominators is to generalize the Stern-Peirce tree
+[cf.~{\sl The Art of Computer Programming\/ \bf2}, exercise 4.5.3--40]
+@^Peirce, Charles Santiago Sanders@>
+@^Stern, Moriz Abraham@>
+to a ``Stern-Peirce wreath'' as follows: Begin with four nodes
+arranged in a circle, containing the respective directions
+**** FILE TX:<TEX.NEW>MF-27.WEB.1, 1-11097 (468704)
+numerators and denominators is to generalize the Stern-Brocot tree
+[cf.~{\sl Concrete Mathematics}, section 4.5]
+@^Brocot, Achille@>
+@^Stern, Moriz Abraham@>
+to a ``Stern-Brocot wreath'' as follows: Begin with four nodes
+arranged in a circle, containing the respective directions
+***************
+
+**** FILE TX:<TEX.MF>MF-20.WEB.1, 1-15894 (663124)
+ pack_file_name(cur_name,MF_area,cur_ext);
+ if a_open_in(cur_file) then goto done;
+ end_file_reading; {remove the level that didn't work}
+**** FILE TX:<TEX.NEW>MF-27.WEB.1, 1-15897 (663314)
+ if cur_area="" then
+ begin pack_file_name(cur_name,MF_area,cur_ext);
+ if a_open_in(cur_file) then goto done;
+ end;
+ end_file_reading; {remove the level that didn't work}
+***************
+
+**** FILE TX:<TEX.MF>MF-20.WEB.1, 1-15919 (664150)
+begin if not input_ln(cur_file,false) then do_nothing;
+firm_up_the_line;
+buffer[limit]:="%"; first:=limit+1; loc:=start; line:=1;
+end
+**** FILE TX:<TEX.NEW>MF-27.WEB.1, 1-15924 (664383)
+begin line:=1;
+if input_ln(cur_file,false) then do_nothing;
+firm_up_the_line;
+buffer[limit]:="%"; first:=limit+1; loc:=start;
+end
+***************
+
+
+########################################################################
+
+Cosmetic change, GFTODVI.WEB, ver 3.0
+
+;COMPARISON OF TX:<TEX.MFWARE>GFTODVI.WEB AND TX:<TEX.NEW>GFTODVI.WEB.1
+;OPTIONS ARE /3
+
+**** FILE TX:<TEX.MFWARE>GFTODVI.WEB, 1-2553 (117187)
+if a |"/"| was removed at the end of the file name; this user that the
+user will have a chance to issue special instructions online just before
+**** FILE TX:<TEX.NEW>GFTODVI.WEB, 1-2553 (117187)
+if a |"/"| was removed at the end of the file name; this means that the
+user will have a chance to issue special instructions online just before
+***************
+
+
+########################################################################
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Character code reference
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Upper case letters: ABCDEFGHIJKLMNOPQRSTUVWXYZ
+% Lower case letters: abcdefghijklmnopqrstuvwxyz
+% Digits: 0123456789
+% Square, curly, angle braces, parentheses: [] {} <> ()
+% Backslash, slash, vertical bar: \ / |
+% Punctuation: . ? ! , : ;
+% Underscore, hyphen, equals sign: _ - =
+% Quotes--right left double: ' ` "
+%"at", "number" "dollar", "percent", "and": @ # $ % &
+% "hat", "star", "plus", "tilde": ^ * + ~
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+[ end of message 028 ]
+-------
+