We think we have shown that it is possible
to do acceptably good typesetting of mathematics
with an input language that is easy to learn and use and
that satisfies many users' demands.
Such a package can be implemented in
given a compiler-compiler and
a decent typesetting program underneath.
Defining a language, and building a compiler for it
seems like the only sensible way to do business.
Our experience with the use of
a grammar and a compiler-compiler has been
If we had written everything into code directly,
we would have been locked into
Furthermore, we would have never been sure
where the exceptions and special cases were.
But because we have a grammar, we can change our minds readily and still be reasonably
sure that if a construction works in one place
We are deeply indebted to
for his willingness to modify
and for his continuous assistance
during the development of our program.
A. V. Aho for help with language theory,
to S. C. Johnson for aid with the compiler-compiler,
A. V. Aho, S. I. Feldman, S. C. Johnson,
for their constructive criticisms.
University of Chicago Press, 1969. p 295.
Model C/A/T Phototypesetter.
Ritchie, D. M., and Thompson, K. L.,
``The UNIX time-sharing system.''
\fIComm. ACM 17,\fR 7 (July 1974), 365-375.
Bell Laboratories Computing Science Technical Report 54, 1977.
Aho, A. V., and Johnson, S. C.,
\fIComp. Surv. 6,\fR 2 (June 1974), 99-124.
B. W. Kernighan and D. M. Ritchie,
The C Programming Language.
Prentice-Hall, Inc., 1978.