|
|
1.1 root 1: .so ../ADM/mac
2: .XX index 609 "Index"
3: .TL
4: Index
5: .AU
6: L. L. Cherry
7: .AI
8: .MH
9: .AB
10: .AE
11: .2C
12: .NH
13: Introduction
14: .PP
15: Because the index that follows was generated mechanically,
16: a description of its layout and contents will help
17: you use it more effectively.
18: I'll describe how the index is organized,
19: how the terms were generated, how the index was generated from
20: the terms, and finally, the difficulties.
21: .NH
22: The Organization
23: .PP
24: Each of the papers is assigned a nickname that
25: is printed in italic to the left of the title in the
26: Table of Contents and in the header of the paper.
27: So, for example, the paper
28: "A System for
29: Algorithm Animation" is called \fIanim\fR and
30: the paper ``A Troff Tutorial'' is called \fItrofftut\fR.
31: In the index the paper nicknames always appear in italics.
32: Literals, which may be file names, command names or keywords
33: in a language, appear in constant width, i.e. \f(CW/bin\fR,
34: \f(CWawk\fR, \f(CWcircle\fR.
35: The terms in the index are not fully cross-referenced.
36: Each paper appears alphabetically under its nickname, followed by an
37: indented mini-index of terms specific to that paper.
38: Generally, these terms are not cross-referenced in the top or global level.
39: So, for example, the terms \f(CWagain\fR, \f(CWbackward\fR,
40: and ``current view'' in \fIanim\fR only appear indented under \fIanim\fR.
41: Terms you might look up to determine whether a topic is
42: discussed anywhere in this volume, however, are fully cross-referenced,
43: like ``Movie Program'' or ``binary search tree.''
44: File names and program names are also indexed globally.
45: Terms that would be redundant or useless under the specific
46: paper only appear at the global
47: level.
48: So, ``Algorithm Animation'' is not in the mini-index under \fIanim\fR.
49: .NH
50: Getting the terms
51: .PP
52: The terms for the index were generated mechanically
53: from the text of the papers.
54: For each paper, a file containing the title and headings, repeated noun phrases,
55: and distinguished words was generated.
56: By distinguished words, I mean those that appear in the paper in
57: a distinguishing font like italics, bold or constant width.
58: This file was than manually edited to a reasonable list of
59: indexing terms.
60: Finally, the terms were coded with indexing level (only global, only specific or
61: fully cross-referenced) and font information.
62: .NH
63: Index Generation
64: .PP
65: Production of the index was completely automatic once the terms were generated
66: and edited.
67: A form of the \fIdiction\fP program that does pattern matching on English
68: text, mapping upper case letters to lower case and punctuation to blanks,
69: located the terms in the text of the paper.
70: Using this location information, \f(CW.Tm\fR commands
71: were inserted in the paper to cause \fItroff\fR to print the page number
72: for each term.
73: An \fIawk\fR program combined the page numbers for each term and
74: generated the global and local versions of the indexing term for each paper.
75: For example, in \fIbackup\fR, references to \f(CW/n\fR, the network
76: file system, appear in the file generated
77: by \fItroff\fR as,
78: .P1
79: 596 /n c
80: 597 /n c
81: 602 /n c
82: .P2
83: and become two indexing entries
84: .P1
85: /n, backup, 596-597, 602 c
86: backup, /n, 596-597, 602 c
87: .P2
88: The \f(CWc\fR is a code for constant width font.
89: .PP
90: Finally the indexes for all of the papers are sorted into one index
91: and another \fIawk\fR program merges like terms and adds font changes.
92: So for the term \f(CW/n\fR, which is referenced in \fIbackup\fR, \fInetb\fR, and \fIsetup\fR,
93: we get
94: .DS
95: \f(CW/n\fP, \fIbackup\fR, 596-597, 602
96: \fInetb\fR, 519
97: \fIsetup\fR, 499-500
98: .DE
99: at the global level and \f(CW/n\fR also appears in the mini-indexes
100: for \fIbackup\fR, \fInetb\fR, and \fIsetup\fR.
101: .NH
102: Difficulties
103: .PP
104: Because the terms are generated directly from the text
105: and the text was written by 40 authors,
106: language choices differ among the papers, and hence
107: among the terms in the index.
108: To locate a paper of interest, you may have to look
109: in the vicinity of the term.
110: For example, although there are 14 papers that deal with
111: ``typesetting'', not all of them explicitly include the term.
112: So we have indexing terms ``typeset,'' ``typesetter'' and
113: ``typesetter graphics.''
114: .PP
115: Terms as they appear in the papers may not be in the same
116: font or case as they appear in the index.
117: There are several reasons for this.
118: First the matching is done solely in lower case
119: in order to match terms that begin sentences
120: or appear in headings.
121: Terms that were derived from headings
122: have their upper case letters restored but may appear in the text
123: of the paper in lower case as well.
124: For some indexing terms case is significant, like the \f(CWd\fR and \f(CWD\fR
125: commands in \fIsam\fR, but unfortunately lost.
126: Both commands are mapped to lower case.
127: Because font changes in the index carry information
128: (paper nickname, literal) the font in the index may differ
129: from that used in the paper.
130: Although most of language papers use constant width font for
131: literals, UNIX commands appear in italic.
132: In the index UNIX commands are in constant width.
133: .PP
134: Where possible, indexing terms are matched in programming
135: examples as well as in the text of the papers.
136: For some terms, like the \f(CWif\fR statement in \fIspin\fR,
137: this is not possible without matching every occurrence
138: of the word ``if'' in the text.
139: .PP
140: Finally, the page number of the term in the index may be off by one,
141: referring to the page before the actual occurrence of the term.
142: When the terms are inserted in the text of the papers
143: for \fItroff\fR to compute their page numbers, they are
144: added in front of the sentence in which they occur.
145: If this sentence begins on the preceding page, then
146: the term will be attributed to that page rather than
147: the one on which it physically appears.
148: .PP
149: If you remember to look in the vicinity of
150: the term you're looking for in the index and not
151: expect the font or case to be identical in the paper,
152: you should find the information you want in this volume.
153: .NH
154: Acknowledgements
155: .PP
156: I am indebted to Doug McIlroy, N. Peter Nelson
157: and Lloyd Nakatani for looking at early
158: versions of the index and for their helpful suggestions
159: on its form.
160: ....
161: .... augmented term in index - 5620 ->5620 terminal
162: ..... sometimes lc used to enhence folding of terms
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.