[comp.text.tex] TeX 3.0 info

mfc@medoc.ec.bull.fr (Matt.Caprile) (08/29/90)

I would like to whole-heartedly thank the two people (so far)
who have sent me info on UNIX TeX 3.0.

Apparently, I mistyped the address. The correct address for
requesting a UNIX TeX tape (from the U. of Wa.) is
   elisabet@max.acs.washington.edu

Since I received two info files I found useful, I am reposting
them (since I haven't seen them in the news over the last
few months).

Forwarded message:
*Date: Mon, 9 Jul 90 09:13 PDT
*From: ELISABET@MAX.U.WASHINGTON.EDU
*Subject: TeX 3.0 info

***** UNIX TeX 3.0 & METAFONT 2.0 are ready *****


We have never before bothered to announce updates, but felt that since
Donald Knuth himself is strongly urging everyone to move to TeX 3.0, we,
too, should make an attempt to get the word out.

>From the master himself (excerpted from "The New Versions of TeX and
METAFONT," TUGboat, Vol. 10, No. 3: 325-328):


"For more than five years I held firm to my conviction that a
stable system was far better than a system that continues to
evolve.  But during the TUG meeting at Stanford in August,
1989, I was persuaded to make one last set of changes, in order
to bring TeX and METAFONT to a state of completion consistent
with their overall philosophy and goals.

The main reason for the changes was the fact that I had guessed
wrong about 7-bit character sets versus 8-bit character sets.  ...
As soon as I realized that a text formatting program with 7-bit
input would rapidly begin to seem as archaic as the 6-bit systems we
once had, I knew that a fundamental revision was necessary.

But the 7-bit assumption pervaded everything, so I needed to take
the programs apart and redo them thoroughly in 8-bit style.  This
put TeX onto the operating table and under the knife for the first
time since 1984, and I had a final opportunity to include a few new
features that had occurred to me or been suggested by users since
then.

The new extensions are entirely upward compatible with previous
versions of TeX and METAFONT (with a few small exceptions ... ).
This means that error-free inputs to the old TeX and METAFONT will
still be error-free inputs to the new systems, and they will still
produce the same outputs.

However, anybody who dares to use the new extensions will be unable
to get the desired results from old versions of TeX and METAFONT.  I
am therefore asking the TeX community to update all copies of the
old versions as soon as possible.  Let us root out and destroy the
obsolete 7-bit systems, even though we were able to do many fine
things with them."

*B*R*I*E*F*L*Y*, the changes:

"1. The character set

Up to 256 distinct characters are now allowed in input files.  The
codes that were formerly limited to the range 0..127 are now in the
range 0..255.  All characters are alike; you are free to use any
character for any purpose in TeX, assigning appropriate values to
its catcode, mathcode, lcode ... [etc.]  ...  There's a new
convention for inputting an arbitrary 8-bit character to TeX when
you can't necessarily type it....  The existence of 8-bit characters
has less effect in METAFONT....  [Its] char operator is now redefined
to operate modulo 256 instead of modulo 128.

2. Hyphenation tables

Up to 256 distinct sets of rules for hyphenation are now allowed in
TeX.  ...  [The new TeX] can tell what hyphenation rules to use on
each word of the paragraph even if you switch frequently back and
forth among many different languages.  ...

3. Hyphenated fragment control

TeX has new parameters lefthyphenmin and righthyphenmin, which
specify the smallest word fragments that will appear at the beginning
or end of a word that has been hyphenated.  ...

4. Smarter ligatures

...  Previous versions of TeX had only one kind of ligature....
The new TeX understands much more complex constructions....

5. Boundary ligatures

...  [T]he first or last character of a word can now be made to
change its shape automatically. ...

6. More compact ligatures

Two or more ligtables can now share common code.  ...  The TFM file
format has been upwardly extended to allow more than 32,500
ligature/kern commands per font.  (Previously there was an effective
limit of 256.)

7. Better looking sloppiness

There is now a better way to avoid overfull boxes, for people who
don't want to look at their documents to fix unfeasible line breaks
manually.  ...  The new feature is a dimension parameter called
emergencystretch.  ...

8. Looking at badness

TeX has a new internal integer parameter called badness that
records the badness of the box it has most recently constructed. ...

9. Looking at the line number

TeX also has a new internal integer parameter called inputlineno,
which contains the number of the line that TeX would show on an
error message if an error occurred now.  ...

10. Not looking at error context

There's a new integer parameter called errorcontextlines that
specifies the maximum number of two-line pairs of context displayed
with TeX's error messages....

11. Output recycling

...  [new integer parameter called holdinginserts] ...

12. Exceptions to upward compatibility

...  I don't know of any cases where users will actually be
affected, because all of these exceptions are pretty esoteric.  ...
[Nine cases are given.] "


*********** For further details, please see the article itself. ************

Knuth's new virtual fonts programs are also part of the new distribution.

Prices for UNIX TeX are no different than they were on October 01, 1987.
If you require ordering information, please let us know and we shall send
you our standard information blurb.
--
 Matt.Caprile@ec.bull.fr  (or  {uunet!}inria!ec.bull.fr!Matt.Caprile)
 Bull S.A.
 1, rue de Provence           phone : +33 76 39 77 52
 B.P. 208                     fax   : +33 76 39 75 18
 38432 Echirolles CEDEX       telex : 980 648 F
       FRANCE