summaryrefslogtreecommitdiff
path: root/info/digests/tex-implementors/032
diff options
context:
space:
mode:
Diffstat (limited to 'info/digests/tex-implementors/032')
-rw-r--r--info/digests/tex-implementors/032659
1 files changed, 659 insertions, 0 deletions
diff --git a/info/digests/tex-implementors/032 b/info/digests/tex-implementors/032
new file mode 100644
index 0000000000..0f9426bccf
--- /dev/null
+++ b/info/digests/tex-implementors/032
@@ -0,0 +1,659 @@
+Date: 1 November 91 Message No: 032
+
+To: TeX implementors and distributors
+
+From: Barbara Beeton
+
+Subject: Publication info for C & T; messages from DEK, part 1
+
+
+On my return from several weeks of out-of-town meetings, I found
+waiting for me a large package from DEK (about 1cm of paper, plus half
+a dozen checks, or checques, depending which side of the Atlantic you
+were on when you learned to spell English). No major rewards in this
+batch, although there will be a version 3.141 probably in January,
+after some updates have been checked out a bit more thoroughly and DEK
+returns from a couple months in Sweden. I am just about ready to
+distribute the checks and the supporting documentation to the original
+submitters. I will also post here the details of the submissions and
+the replies; this involves deciphering DEK's handwritten notes and
+typing them in so that they make sense. The first installment is
+included below.
+
+I was also asked to find out the current status of several volumes in
+the Computers & Typesetting series, in particular, whether volumes B
+and D (**: The Program) now contain the version 3 (etc.) updates. As
+this information is likely to be of general interest, the report from
+Addison-Wesley is given below.
+
+As usual after such a long break in "official" messages, there have
+been quite a few address updates and a few additions. So, once again,
+acknowledgements would be appreciated, to make sure the mail is getting
+through.
+
+
+########################################################################
+
+status of volumes in the series Computers & Typesetting, by Donald E. Knuth
+information received from Addison-Wesley, 23 October 1991
+
+ printing
+ ref.no. vol. title edition number date
+
+hardbound:
+
+ 13447 A The TeXbook 1 11th June 1, 1991
+
+ 13437 B TeX: The Program 1 4th May 1, 1991
+
+ 13445 C The METAFONTbook 1 4th Sept, 1991
+
+ 13438 D METAFONT: The Program 1 4th Oct, 1991
+
+ 13446 E Computer Modern Typefaces 1 3rd Aug, 1987
+
+soft/spiral bound:
+
+ 13448 The TeXbook 1 20th May 1, 1991
+
+ 13444 The METAFONTbook 1 6th Feb, 1991
+
+note: all printings are marked "with corrections"
+
+
+########################################################################
+
+Date: Mon 24 Jun 91 13:28:03-EST
+Subject: bug report (plain.tex) for don
+
+don,
+here's a bug in plain that has been flushed out by phil taylor.
+
+ Date: Fri, 21 JUN 91 20:54:14 BST
+ From: CHAA006@vax.rhbnc.ac.uk
+ "Philip Taylor (RHBNC) <P.Taylor@Uk.Ac.Rhbnc.Vax>"
+ Subject: Bug in PLAIN
+
+ Hi, Barbara et al ...
+
+ I have just spent nine hours searching for a bug in my code ...
+ I finally thought to check Plain.TeX (fmtversion{3.0}) and found ...
+
+ \def\multispan#1{\omit \mscount#1
+ \loop\ifnum\mscount>\@ne \sp@n\repeat}
+ \def\sp@n{\span\omit\advance\mscount\m@ne}
+
+ which explained everything ...
+
+ It's simply that the first line ends `#1', rather than `#1\relax';
+ if \multispan is invoked with a \countdef'd register, as in
+
+ \multispan \columns \hrulefill \cr
+
+ an extra and totally unwanted space intrudes before the \hrulefill.
+
+ Is this a known bug, or has it just failed to emerge from the woodwork
+ before ?
+
+ ** Phil.
+
+this little test demonstrates the problem "loud and clear".
+
+ \def\testmspan#1{%
+ \halign{##\hfil&&\qquad##\hfil\cr
+ XX&\multispan{#1}XXXXX&XX\cr
+ XX&XX&XX&XX&XX\cr}}
+
+ \testmspan{3}
+
+ \newcount\columns
+ \columns=3
+ \testmspan{\columns}
+
+ \catcode`\@=11
+ \def\multispan#1{\omit \mscount#1\relax
+ \loop\ifnum\mscount>\@ne \sp@n\repeat}
+ \catcode`\@=12
+
+ \testmspan{\columns}
+
+ \bye
+
+i wonder how many people have noticed something slightly wrong but
+never went out of their way to check?
+ -- bb
+
+[ reply from dek:
+
+ $2.56 (which works out to about 28\cents{} per hour)
+ Thanks very much!
+ will be fixed in plain version 3.1
+]
+
+
+########################################################################
+
+Date: Sun 15 Sep 91 15:03:54-EST
+Subject: bugs and questions for don
+
+don, here are some bug reports and other comments that have been
+accumulating. i should have sent most of them earlier, but most
+of these aren't "easy" ones, and i've been out of town so much
+ [ dek: ^^^^ rather an understatement ...
+ but nothing to match the earlier stuff on hyphenation & ligatures. ]
+that i just never got them organized.
+ -- bb
+ [ dek:
+ No problem -- good thing in fat, because I just finished a
+ big project that was causing me to turn off all other mail --
+ and I'm just about tostart another -- so Sep 17 was the day
+ I chose to look at TeX stuff. ]
+
+ --------------------
+Contents:
+ question on "final" update to TeX and MF
+ TeXbook errata and questions
+ easy items
+ handling of space tokens
+ still a bug in p. 377 footnote
+ incompatibility of positive/negative integer values
+ file name overflow of string pool
+ TeX
+ handling of \newlinechar within \special
+ size of \smash'ed boxes
+ verifying that 8-bit input is supported
+ incompatibilities between \input and \openin
+ WEB system
+ dealing with repeating code in .WEB files
+
+************************************************************************
+
+Question on "final" update to TeX and MF
+
+Who will be authorized to change the version numbers of TeX and MF
+to $\pi$ and $e$ respectively? It might be a good idea just to have
+this information "on the record"; perhaps a message to be placed on
+file in the TUG office would suffice.
+
+ [ dek:
+ I put such a message into TEX82.BUG and MF84.BUG some time ago,
+ so I presume any archive keeper could make the change. (Actually
+ it also implies changes to Volumes B and D also, and in the
+ `Running' chapters of Volumes A and C; so I have added a phrase
+ to TEX82.BUG and MF84.BUG. I guess the authorized person will
+ be my literary executor, given that my program is supposed to be
+ literate?
+ ]
+
+************************************************************************
+
+TeXbook errata and questions -- easy items
+
+Date: Thu, 27 Jun 91 23:11:47 BST
+From: CET1@phoenix.cambridge.ac.uk
+Subject: A TeXbook possible-bug from Robert Hunt, etc
+
+> Submitted: 20:44:00 12 Apr 91
+> From: Robert Hunt <REH10>
+> To: cet1
+> Subject: TeX
+>
+> I've just discovered a _very_ minor problem with the TeXbook, but I thought I'd
+> point it out to you anyway, while there's already an outstanding problem being
+> considered. I certainly don't think it's a real "bug" but it's certainly worth
+> telling Knuth! I've just noticed that the only place in the TeXbook where it
+> informs you that exactly one space token is ignored after a closing $$ is in
+> the answer to Exercise 14.30, on page 316. It surely ought to mention this in
+> some other places as well: in particular, it should be on page 287, and
+> possibly on page 189 (though Knuth is unlikely to want to do this as it'd be
+> difficult to avoid having to rearrange lots of text to fit!).
+
+I think that there is something in this, although I suspect that the
+canonical place it should be documented is on page 293 (treatment of
+$ and $$ when encountered in math mode), not page 287. Anyway, I think
+ [ dek: ^^^^^^^^^^^^ right
+it deserves to have Don look at it: as far as I can make out there
+haven't been any TeXbook changes that affect Robert's claim.
+ [ dek:
+ Aha, there _is_ room on page 293!
+ $2.56 ]
+
+i still have outstanding the various error reports about the p.377
+footnote. I will try to get back to you on this *soon* (sigh).
+
+Chris Thompson
+ -------
+
+Date: Mon, 9 Sep 91 13:19:21 PDT
+From: raymond@math.berkeley.edu (Raymond Chen)
+Subject: TeXbook errata
+
+Please pass these on to DEK, as I ran across them in my marginal notes
+after I mailed off my letter...
+
+They're all index items, and they're not really errata.
+
+add `\note: 318'. Many times I've wanted to find that macro and couldn't.
+ though perhaps keeping it under `footnotes: 121' is good enough.
+ [ dek: \check ]
+
+add `72' to \hss, even though it doesn't appear explicitly, since that
+ is where we learn exactly how much glue an \hss produces. (Curiously,
+ \hfil, \hfill, and \hfilneg are indexed for that page. \hss is the
+ odd man out.)
+ [ dek: 32\cents ]
+
+add `93' to `hyphenation', since that's where the most obvious method
+ of suppressing hyphenation is presented. (I get asked this quite a bit,
+ and it's annoying not to be able to say, ``Just check the index.'')
+ [ dek: $2.56
+ included in check sent directly to him in response to his letter ]
+
+My proposals to change the index are usually rejected, but if DEK feels
+like considering them, he can do so.
+
+ --rjc
+ -------
+
+Date: Sun, 18 AUG 91 17:57:27 +0100
+From: CA_ROWLEY@vax.acs.open.ac.uk
+Subject: Bug in TeXbook
+
+whilst idly perusing Chap 24, looking for yet more amazing syntax and
+overloading (of the latter, \font was a new one for me!),
+ [ dek: you knew about \span ]
+i discovered in black and white in the middle of page 275 the bold
+statement:
+
+"but in all cases this sign (=) is optional"
+
+now you and i know that Don knows perfectly well that this is not
+true---to take a simple example (there are other more subtle ones),
+the assignment:
+
+\let \equalsign = =
+
+here the first equals sign is essential.
+ [ dek: precisely _because_ it is optional! ]
+
+do you think Don wants to know about this?
+ [ dek: a (black and white) lie? ]
+
+chris
+ -------
+
+Date: Wed, 21 Aug 91 12:12:15 +0200
+From: Eberhard Mattes <mattes@azu.informatik.uni-stuttgart.de>
+Subject: Very insignificant error in The TeXbook?
+
+p. 96:
+----------------------------------------------------------------------------
+Some compound words in German text change their spelling when they are
+split between lines. For example, `backen' becomes `bak-ken' and `Bettuch'
+becomes `Bett-tuch'.
+----------------------------------------------------------------------------
+
+I think `backen' isn't a compound word, if `compound word' meens
+a word composed of two or more words (in contrast to syllables).
+ [ dek:
+ $2.56
+ should i have used `backenfisch' instead? ]
+
+ -Eberhard Mattes
+ -------
+
+************************************************************************
+
+TeXbook errata and questions -- still a bug in p. 377 footnote
+
+[ note that according to Chris Thompson, Robert Hunt had already
+ informed him that the p. 377 bug wasn't entirely fixed; however
+ this commentary reached me first. ]
+
+Date: Fri, 31 May 91 11:43:02
+From: Mike Piff <PM1MJP@primea.sheffield.ac.uk>
+To: beebe <@nsfnet-relay.ac.uk:beebe@MATH.UTAH.edu>
+Subject: Space tokens
+
+% Please forward to DEK.
+% The scheme in the footnote on p377 of The TeXbook appears not to work.
+% Mike Piff
+
+[ test code was included, but was replaced by later version, below ]
+ -----------------------------------------------------------------------------
+ From Dr M. J. Piff, Department of Pure Mathematics, PO Box 597,
+ Hicks Noisy Building Site, Hounsfield Road,
+ [ dek:^^^^^^^^^^^^^^^^^^^^^^^^^ beautiful ]
+ SHEFFIELD S10 2UN, England.
+ Tel. SHEFFIELD(0742) 768555 Extension 4431.
+ JANET MPiff@UK.AC.SHEF.PA or MPiff@UK.AC.SHEF.IBM
+ -----------------------------------------------------------------------------
+ -------
+Date: Sat 1 Jun 91 23:32:27-EST
+From: bbeeton <BNB@MATH.AMS.COM>
+To: mpiff@pa.shef.ac.uk
+Cc: beebe@math.utah.edu
+Subject: texbook bug, footnote, p377
+
+nelson beebe forwarded to me your bug report on the footnote on p.377
+of the texbook.
+this was already reported just a couple of months ago. the attached
+correction appears in the most recent errata.tex file (the seventh
+such file).
+ -- bb
+ --------------------
+
+\bugonpage A377, the bottom 14 lines (3/26/91)
+
+\eightpoint\indent
+ASCII \<space>; the macro
+also decides whether a space token is explicit or implicit.
+\begintt
+\newif\ifspace \newif\iffunny \newif\ifexplicit
+\def\stest#1{\expandafter\s\the#1! \stest}
+\def\s{\funnyfalse \global\explicitfalse \futurelet\next\ss}
+\def\ss{\ifcat\noexpand\next\stoken \spacetrue
+ \ifx\next\stoken \let\next=\sss \else\let\next=\ssss \fi
+ \else \let\next=\sssss \fi \next}
+\long\def\sss#1 #2\stest{\def\next{#1}%
+ \ifx\next\empty \global\explicittrue \fi}
+\long\def\ssss#1#2\stest{\funnytrue {\uccode`#1=`~
+ \uppercase{\ifcat\noexpand#1}\noexpand~% active funny space
+ \else \escapechar=\if*#1`?\else`*\fi
+ \if#1\string#1\global\explicittrue\fi \fi}}
+\long\def\sssss#1\stest{\spacefalse}
+\endtt
+ -------
+Date: Tue, 04 Jun 91 10:11:21
+From: Mike Piff <PM1MJP@primea.sheffield.ac.uk>
+Subject: texbook bug, footnote, p377
+
+I don't think the code you sent works. It gives an error message on \ftoken.
+Mine definitely works, and correctly distinguishes the SIX different space
+[dek:^^^^^^^^^^^^^^^^ ha ha
+ touch\'e [and I sure thought I had tested it ... ]
+tokens.
+
+Mike Piff
+ -------
+Date: Wed, 05 Jun 91 10:25:12
+From: Mike Piff <PM1MJP@primea.sheffield.ac.uk>
+Subject: Re: texbook bug, footnote, p377
+
+% I attach a cleaned-up version of what I sent before. This looks more like
+% the footnote on p377 of The TeXbook.
+% Mike Piff
+
+\newif\ifspace \newif\iffunny \newif\ifexplicit \newif\ifactive
+\def\stest#1{\expandafter\s\the#1 \stest}
+% [ dek: ^ put ! here in case the token list is empty ]
+\def\s{\spacetrue\explicittrue\activefalse\funnyfalse\futurelet\next\ss}
+% [ dek: ^ ^ \global (see page 301 near bottom) ]
+\def\ss{\ifcat\noexpand\next\stoken
+ \ifx\next\stoken\let\next=\sss\else\let\next=\ssss\fi
+ \else\spacefalse\let\next=\sssss\fi\next}
+\long\def\seeifactive#1{\expandafter\seex\string#1\seex}
+\long\def\seex#1#2\seex{\def\Temp{#2}\ifx\Temp\empty\global\activetrue\fi}
+\long\def\sss#1 #2\stest{\def\next{#1}%
+ \ifx\next\empty\else\explicitfalse\seeifactive{#1}\fi}
+% [ dek: ^^
+ bug if the token list has length >1 ]
+\long\def\ssss#1#2\stest{\funnytrue
+ {\escapechar=\if*#1`?\else`*\fi
+% [ dek: ^ \relax needed here I think
+ [Because TeX wants a space after `*! Otherwise the escapechar
+ isn't changed until after the \if#1\string#2 .]
+ diagonalization, eh? ]
+ \if#1\string#1\else\global\explicitfalse\seeifactive{#1}\fi}}
+\long\def\sssss#1\stest{}
+\def\CR{\immediate\write16{}}
+
+ [ dek:
+ nice; I had decided in March to give up trying to distinguish
+ active ones! Actually this _doesn't_ quite work, but it is
+ my fault (a bug in 3.0: \string^^88 comes out of length 1 when
+ ^^88 is not active, but of length 4 when it's active; according
+ to page 213 it should be length 1 in both cases).
+ Also it fails to distinguish _active_ _funny_ *
+ from explicit funny *,
+ Also there's a problem when you make |_| active because string
+ converts that into a space token! Then \seex will have a
+ runaway argument because an undelimited parameter #1 can't be
+ a space token.
+ +-------+
+ | Aargh |
+ +-------+
+ _Also_ a problem when \next is \futurelet to be \if ...
+ ]
+
+\def\report{%
+ \ifspace
+ \ifexplicit
+ \message{explicit}%
+ \else
+ \message{implicit}%
+ \ifactive
+ \message{active}%
+ \fi
+ \fi
+ \iffunny\message{funny}\else\message{normal}\fi
+ \message{space}%
+ \else
+ \message{nonspace}
+ \fi
+ \CR
+}
+
+
+% and now, a few tests of the various possibilities
+
+\newtoks\Test
+
+\def\1{\let\stoken= }\1 %
+
+\catcode`\!=\active
+\def\2{\let!= }\2 % ! active let to space
+
+\uccode` =`*
+\uppercase{\uppercase{\def\fspace{ }\let\ftoken= } }
+% \fspace expands to *space, \ftoken let to *space
+
+\catcode`[=\active
+\edef\3{\let\noexpand[=\fspace\fspace}\3% [active let to *space
+
+ [ dek: where used? ]
+
+\CR
+
+\Test={ } % explicit normal space
+\stest\Test\report
+
+\Test=\expandafter{\fspace} % explicit funny space
+\stest\Test\report
+
+\Test={\stoken} %implicit normal space
+\stest\Test\report
+
+\Test={\ftoken} % implicit funny space
+\stest\Test\report
+
+\Test={!} % active normal space
+\stest\Test\report
+
+\catcode`|=\active \let|= \ftoken % active funny space
+\Test={|}
+\stest\Test\report
+
+\end
+
+ [ dek:
+ see enclosed test [p377.tex, p377.log] which I think _really_
+ puts the thing through its paces
+ [actually I did additional tests too because the enclosed
+ trials always set \escapechar to `?]
+ ]
+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+p377 dated September 20, 1991 at 1014
+
+
+% decoding space tokens (footnote on page A377)
+% solution found with help of Mike Piff
+
+\newif\ifspace \newif\iffunny \newif\ifexplicit \newif\ifactive
+\def\stest#1{\funnyfalse \expandafter\s\the#1! \stest}
+\def\s{\global\explicitfalse \global\activefalse \futurelet\next\ss}
+\def\ss{\ifcat\noexpand\next\stoken\let\nxt\sx\else\let\nxt\ns\fi\nxt}
+\def\sx{\spacetrue\ifx\next\stoken\let\nxt\sss\else\let\nxt=\ssss\fi\nxt}
+\long\def\sss#1 #2\stest{\def\next{#1}%
+ \ifx\next\empty\global\explicittrue \else\testactive#1\s\fi}
+\long\def\ssss#1#2\stest{\funnytrue{\escapechar=\if*#1`?\else`*\fi\relax
+ \if#1\string#1\uccode`#1=`~ % we assume that ~ is an active character
+ \uppercase{\ifcat\noexpand#1}\noexpand~\global\activetrue
+ \else\global\explicittrue\fi
+ \else\testactive#1\s\fi}}
+\long\def\ns#1\stest{\spacefalse}
+\long\def\testactive#1#2\s{\expandafter\tact\string#1\s\tact}
+\long\def\tact#1#2\tact{\def\next{#2}\ifx\next\xs\global\activetrue
+ \else\ifx\next\empty \global\activetrue\fi\fi} \def\xs{\s}
+
+\def\report#1{\message{#1:}%
+ \ifspace
+ \message{\ifexplicit ex\elseim\fi plicit}%
+ \ifactive\message{active}%
+ \message{\iffunny funny\else normal\fi space}%
+ \else\message{nonspace}
+ \fi
+ \CR}
+\def\CR{\immediate\write16{}}
+
+\newtoks\Test
+
+\def\1{\let\stoken= }\1 % implicit normal space token
+\catcode`\!=\active
+\def\2{\let!= }\2 % active normal space token
+\uccode` =`*
+\uppercase{\uppercase{\def\fspace{ }\let\ftoken= } }
+% \fspace expands to explicit funny space, \ftoken is implicit funny *space
+\uccode` =0
+
+\CR
+
+\test={ }
+\stest\test\report1 % explicit normal space
+
+\test=\expandafter{\fspace}
+\stest\test\report2 % explicit funny space
+
+\test={\stoken}
+\stest\test\report3 % implicit normal space
+
+\test={\ftoken}
+\stest\test\report4 % implicit funny space
+
+\test={!}
+\stest\test\report5 % implicit active normal space
+
+\catcode`\^^99=\active \let^^99= \ftoken
+\test={^^99\par}
+\stest\test\report6 % implicit active funny space
+
+{\catcode`\*=\active \let*= ^^99
+\test={*}
+\stest\test\report7 % implicit active funny space
+}
+
+\test={}
+\stest\test\report8 % nonspace
+
+\test={{ }}
+\stest\test\report9 % nonspace
+
+\test={\if}
+\stest\test\report{10} % dangerous nonspace
+
+\test={ \par}
+\stest\test\report{11} % explicit normal space
+
+{\catcode`\ =\active\let =\stoken\stoken%
+\test={ }%
+\stest\test\report{12} % implicit active normal space
+}
+
+{\catcode`\ =\active\let =\stoken\ftoken%
+\test={ }%
+\stest\test\report{13} % implicit active funny space
+}
+
+\bye
+
+(end of file)
+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+This is TeX, Version 3.14a for SunOS (preloaded format=plain 91.9.20)
+ 20 SEP 1991 10:13
+ [ dek: ^^^^^ Note!
+ [Same variations do _not_ work with version 3.14;
+ 3.14a is an experimental "\alpha test" for next release]
+ ]
+**p377.tex
+(p377.tex
+\test=\toks12
+
+
+1: explicit normalspace
+
+2: explicit funnyspace
+
+3: implicit normalspace
+
+4: implicit funnyspace
+
+5: implicit active normalspace
+
+6: implicit active funnyspace
+
+7: implicit active funnyspace
+
+8: nonspace
+
+9: nonspace
+
+10: nonspace
+
+11: explicit normalspace
+
+12: implicit active normalspace
+
+13: implicit active funnyspace
+
+ )
+No pages of output.
+
+(end of file)
+
+
+########################################################################
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% 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 032 ]
+-------
+