perm filename EXAMP.DOC[2,TES] blob
sn#019979 filedate 1973-01-09 generic text, type T, neo UTF8
STANFORD ARTIFICIAL INTELLIGENCE PROJECT January 1973
OPERATING NOTE 70
PUB
The Document Compiler
by
Larry Tesler
ABSTRACT:
PUB is an advanced text justifier and page formatter intended
primarily for use by programmers. It can automatically number pages,
sections, figures, footnotes, etc. and can print their numbers in
roman numerals as well as in digit or letter form. It can generate
cross references, tables of contents, and indexes. Page layout is
flexible, and allows multiple column output. Line formatting
includes tabs, underlining, superscripts, subscripts, centering, and
justification. Macros programmed in a SAIL-like string-processing
language can generate text to be printed in the document. The output
of the compiler is a file which can be printed on the terminal, on
the line printer, or on microfilm.
ACKNOWLEDGMENTS:
Les Earnest created the concept of the Document Compiler and
specified most of its capabilities.
Dan Swinehart provided invaluable advice and aid throughout the
development of PUB.
Russ Taylor programmed the FR-80 preprocessor.
This work was supported in part by the Advanced Research Projects
Agency of the Department of Defense under Contract SD 183.
SAILON-70 PUB Page i
TABLE OF CONTENTS
----- -- --------
SECTION PAGE
1 INTRODUCTION
1.1 PURPOSE . . . . . . . . . . . 1
1.2 CAPABILITIES . . . . . . . . . . 1
SUBJECT AND COMMAND INDEX . . . . . . . . . . I
SAILON-70 PUB Page 1
SECTION 1
INTRODUCTION
1.1 PURPOSE
_______
PUB is a compiler which translates a manuscript into a
__________
document.
________
A "manuscript" is an SOS file containing the text of a
publication interspersed with control characters and
commands. The function of the compiler is to arrange
________
this text on formatted pages under the direction of
the control characters and commands.
Output is written on a ".DOC" file known as the
"document". TYPE, SPOOL or PRINT it. Under certain
conditions, the document can be edited with TECO (see
Section ), but it is wiser to make corrections in
the manuscript and then rerun the compiler.
MANUSCRIPT →→→→→→→→ DOCUMENT
COMPILER
1.2 CAPABILITIES
____________
PUB provides the usual capabilities of a simple text-
justifier, including:
>Page numbering
>Optional justification to the right margin
>Centering of titles
>Headings and footings
>Control of Spacing and Indentation
>Underlining
In addition, it features advanced documentation
capabilities, such as:
1.1 - 1.2
Page 2 INTRODUCTION SAILON-70
>Columnar output
>Footnote placement
>Macros
>Index Generation
>Table of contents generation
>Cross-reference to a variable target
>Automatic numbering of equations, tables, notes, etc
>Supersripts and Subscripts
>Microfilm Output
The command language is a dialect of SAIL Algol,
providing the user with:
>Block structure
>Conditional command execution
>Conditional text inclusion
>Arithmetic and String calculations
>Embedded Source Files
1.2
SAILON-70 PUB Page I
SUBJECT AND COMMAND INDEX
(References are to Page numbers)
CAPABILITIES 1
document 1
INTRODUCTION 1
manuscript 1
PURPOSE 1