summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Master/texmf-dist/doc/etex/base/etex_gen.tex62
1 files changed, 31 insertions, 31 deletions
diff --git a/Master/texmf-dist/doc/etex/base/etex_gen.tex b/Master/texmf-dist/doc/etex/base/etex_gen.tex
index 795aaf36884..c9dd037c4e2 100644
--- a/Master/texmf-dist/doc/etex/base/etex_gen.tex
+++ b/Master/texmf-dist/doc/etex/base/etex_gen.tex
@@ -1,4 +1,4 @@
-% etex_gen.tex --- How to generate e-TeX --- last modified 22 Oct 1996
+% etex_gen.tex --- How to generate e-TeX --- last modified 06 Mar 1998
\font\eighttt= cmtt8
\font\eightrm= cmr8
@@ -22,7 +22,7 @@
\vfill
\centerline{\titlefont How to generate \eTeX}
\vskip 6pt
-\centerline{({\sl Version 1, October 1996\/})}
+\centerline{({\sl Version 2, March 1998\/})}
\vskip 18pt
\centerline{by The \NTS\ Team}
\vskip 6pt
@@ -31,7 +31,7 @@
\centerline{Philip Taylor, RHBNC, University of London}
\vfill
\centerline{\vbox{\hsize 4in
-\noindent Given an implementaion of \TeX82 for a particular system, this
+\noindent Given an implementation of \TeX82 for a particular system, this
report describes how to generate a corresponding implementation of
\eTeX.}}
\vskip 24pt
@@ -60,10 +60,10 @@ Deutschsprachige Anwendervereinigung \TeX\ e.V.\hfil\break
\section Introduction.
Let us first review the process of generating an implementation of
\TeX82 for a particular system from the source files as, e.g., described
-in the \.{WEB} manual [1]. The system independent source file
+in the \.{WEB} manual [1]. The system-independent source file
\.{tex.web} must remain unmodified. All changes to \.{tex.web}
necessary for a particular operating system and\slash or compiler are to
-be collected in a system dependent change file, typically named
+be collected in a system-dependent change file, typically named
\.{tex.ch}. Both files \.{tex.web} and \.{tex.ch} are effectively
merged when input by the \.{WEB} system programs \.{WEAVE} and
\.{TANGLE}. When \.{WEAVE} processes this merged input, a file
@@ -91,11 +91,11 @@ the same executable program used with different run time options.
\vskip 24pt plus 24pt
\section Generating \eTeX.
The process of generating \eTeX\ is essentially the same as that of
-generating \TeX\ as described above. Conceptually there is a system
-independent source file \.{etex.web} and a system dependent change file
-\.{etex.sys}. Processing these two files by \.{TANGLE} yields a string
-pool file \.{etex.pool} as well as a Pascal file \.{etex.pas}, whilst
-processing by \.{WEAVE} produces a \TeX\ source file, \.{etex.tex}.
+generating \TeX\ as described above. Conceptually there is a
+system-independent source file \.{etex.web} and a system-dependent change
+file \.{etex.sys}. Processing these two files by \.{TANGLE} yields a
+string pool file \.{etex.pool} as well as a Pascal file \.{etex.pas},
+whilst processing by \.{WEAVE} produces a \TeX\ source file, \.{etex.tex}.
It may, however, be necessary to increase some of the constants defined
in \.{TANGLE} and \.{WEAVE}. The following values should suffice in
@@ -115,15 +115,15 @@ The source file \.{etex.web} for \eTeX\ does not, however, exist as a
physical file. It is the hypothetical file obtained by applying the
changes in the actual source file \.{etex.ch} to \.{tex.web}. Thus
\.{etex.web} inherits the bulk of code from \.{tex.web}, whilst the
-system independent source file \.{etex.ch} for \eTeX\ defines the
+system-independent source file \.{etex.ch} for \eTeX\ defines the
differences between \.{etex.web} and \.{tex.web}. In order to generate
an implementation of \eTeX\ two change files have to be applied to
\.{tex.web}, one after the other (the actual file names may differ):
$$
\vcenter{\halign{#\hfil&\qquad\.{#}\hfil&\qquad#\hfil\cr
-0.&tex.web&system independent \.{WEB} source for \TeX\cr
-1.&etex.ch&system independent changes for \eTeX\cr
-2.&etex.sys&system dependent changes for \eTeX\cr
+0.&tex.web&system-independent \.{WEB} source for \TeX\cr
+1.&etex.ch&system-independent changes for \eTeX\cr
+2.&etex.sys&system-dependent changes for \eTeX\cr
}}
$$
@@ -144,7 +144,7 @@ Every implementor of \eTeX\ is responsible for creating and maintaining
a suitable \.{etex.sys} in the same way as every implementor of \TeX\
is responsible for creating and maintaining \.{tex.ch}. Since the bulk
of code in \.{etex.web} is identical to that in \.{tex.web} the bulk of
-the system dependent changes in \.{etex.sys} for a particular system
+the system-dependent changes in \.{etex.sys} for a particular system
will be identical to those in \.{tex.ch} for the same system. In the
following we try to give some hints where \.{etex.sys} for a particular
system might deviate from the corresponding \.{tex.ch}.
@@ -161,18 +161,18 @@ in addition to those occupied by strings from the pool file. It is,
therefore, sufficient to increase \\{pool\_size} (or reduce
\\{string\_vacancies}) by the number of \eTeX's additional string
characters and to increase \\{max\_strings} by the number of \eTeX's
-additional strings. The later will, however, be unnecessary for most
+additional strings. The latter will, however, be unnecessary for most
implementations as \\{max\_strings} is usually increased substantially
beyond its standard value in order to accommodate large \TeX\ macro
packages.
-For Version~1 of \eTeX, there are less than 100 additional strings with
-less that 1000 additional string characters. The precise numbers can be
+For Version~2 of \eTeX, there are about 100 additional strings with
+about 1500 additional string characters. The precise numbers can be
obtained by running \.{POOLTYPE} on \TeX's and \eTeX's pool files
(\.{POOLTYPE} reports the total number of strings and string characters
in a pool file).
-Next, \.{etex.sys} may contain a system dependent modification of the
+Next, \.{etex.sys} may contain a system-dependent modification of the
\\{eTeX\_banner} string. The modified \\{eTeX\_banner} string must
contain `\.{e-TeX}' as well as the \eTeX\ version number. Note,
however, that the \\{banner} string modified by \.{tex.ch} will not be
@@ -185,24 +185,24 @@ different pool file name and\slash or format file extension (see below).
Finally, \.{etex.sys} will necessarily deviate whenever \.{etex.ch}
and \.{tex.ch} try to change the same piece of \.{WEB} code or when the
-system independent \eTeX\ changes from \.{etex.ch} and the system
-dependent \TeX\ changes from \.{tex.ch} interfere in some other way. In
-case of any such interference implementors must first of all determine
+system-independent \eTeX\ changes from \.{etex.ch} and the
+system-dependent \TeX\ changes from \.{tex.ch} interfere in some other way.
+In case of any such interference implementors must first of all determine
how to combine the respective changes from \.{etex.ch} and \.{tex.ch}
in order to obtain \eTeX's functionality for a particular system.
Obviously, this process cannot be automated since it requires human
insight.
The \NTS\ team has tried to formulate \.{etex.ch} such that
-interferences with system dependent change files \.{tex.ch} are
+interferences with system-dependent change files \.{tex.ch} are
unlikely. Suggestions by implementors how any remaining such
interferences could be avoided by a reformulation of \.{etex.ch} will
-be taken under serious consideration. Such interferences can be further
-reduced by reformulating the system dependent change file \.{tex.ch} for
+be taken into serious consideration. Such interferences can be further
+reduced by reformulating the system-dependent change file \.{tex.ch} for
\TeX, e.g.\ by reducing the range of change entries from entire modules
to the pieces of code that are actually changed.
-Implementors might prefer to maintain the system dependent change file
+Implementors might prefer to maintain the system-dependent change file
\.{etex.sys} not as a physical file but as a hypothetical file defined
through its deviation from \.{tex.ch}. If there are no interferences of
the kind mentioned above, then the effect of applying the changes from
@@ -211,10 +211,10 @@ achieved by applying 3 change files, one after the other, to \.{tex.web}
(using some tool such as \.{TIE}, \.{PATCHWEB}, or \.{WEBMERGE}):
$$
\vcenter{\halign{#\hfil&\qquad\.{#}\hfil&\qquad#\hfil\cr
-0.&tex.web&system independent \.{WEB} source for \TeX\cr
-1.&etex.ch&system independent changes for \eTeX\cr
-2.&tex.ch&system dependent changes for \TeX\cr
-3.&tex.ech&additional system dependent changes for \eTeX\cr
+0.&tex.web&system-independent \.{WEB} source for \TeX\cr
+1.&etex.ch&system-independent changes for \eTeX\cr
+2.&tex.ch&system-dependent changes for \TeX\cr
+3.&tex.ech&additional system-dependent changes for \eTeX\cr
}}
$$
The third change file \.{tex.ech} will be rather short and contains just
@@ -236,7 +236,7 @@ choice is, of course, an extended feature of \eTeX. Once \eTeX\ has
chosen compatibility mode it is, however, a legitimate implementation of
\TeX\ (assuming the \TeX\ implementation itself is legitimate). The
only differences between \eTeX\ in compatibility mode and \TeX\ are
-those allowed by D.E.~Knuth [2] between different implementations of
+those allowed by D.~E.~Knuth [2] between different implementations of
\TeX.
An \.{e-TRIP} test suite [3] defines the criteria by which a program can