-
-
Notifications
You must be signed in to change notification settings - Fork 3
/
x-glossary.tex
298 lines (231 loc) · 11.5 KB
/
x-glossary.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
\setglossarystyle{altlist}
\makeglossaries
\defineglossary{encoding}{
A particular interpretation of a sequence of bytes into distinguishable \gpl{character}.
}
\defineglossary{character}{
A singular entity as specified by an \g{encoding}.
}
\defineglossary{alphabetic}{
Any \g{character} that is one of the following: \\
{\ttfamily
\unicode{61} \unicode{62} \unicode{63} \unicode{64} \unicode{65}\\
\unicode{66} \unicode{67} \unicode{68} \unicode{69} \unicode{6A}\\
\unicode{6B} \unicode{6C} \unicode{6D} \unicode{6E} \unicode{6F}\\
\unicode{70} \unicode{71} \unicode{72} \unicode{73} \unicode{74}\\
\unicode{75} \unicode{76} \unicode{77} \unicode{78} \unicode{79}\\
\unicode{7A} \unicode{41} \unicode{42} \unicode{43} \unicode{44}\\
\unicode{45} \unicode{46} \unicode{47} \unicode{48} \unicode{49}\\
\unicode{4A} \unicode{4B} \unicode{4C} \unicode{4D} \unicode{4E}\\
\unicode{4F} \unicode{50} \unicode{51} \unicode{52} \unicode{53}\\
\unicode{54} \unicode{55} \unicode{56} \unicode{57} \unicode{58}\\
\unicode{59} \unicode{5A}}
}
\defineglossary{numeric}{
Any \g{character} that is one of the following: \\
{\ttfamily
\unicode{30} \unicode{31} \unicode{32} \unicode{33} \unicode{34}\\
\unicode{35} \unicode{36} \unicode{37} \unicode{38} \unicode{39}}
}
\defineglossary{alphanumeric}{
Any \g{character} that is either \g{alphabetic} or \g{numeric}.
}
\defineglossary{whitespace}{
Any \g{character} that represents a horizontal gap. Examples include space, tab, zero-width space, etc.
}
\defineglossary{character class}{
A specified set of \gpl{character}.
}
\defineglossary{hexadecimal number}{
A sequence of \gpl{character} that are one of the following and thus form a mathematical number in base-16/hexadecimal representation. \\
{\ttfamily
\unicode{30} \unicode{31} \unicode{32} \unicode{33} \unicode{34}\\
\unicode{35} \unicode{36} \unicode{37} \unicode{38} \unicode{39}\\
\unicode{61} \unicode{62} \unicode{63} \unicode{64} \unicode{65} \unicode{66}\\
\unicode{41} \unicode{42} \unicode{43} \unicode{44} \unicode{45} \unicode{46}}
}
\defineglossary{decimal number}{
A sequence of \gpl{character} that are \g{numeric} and thus form a mathematical number in base-10/decimal representation.
}
\defineglossary{real number}{
A sequence of \gpl{character} as follows: One or more \g{numeric} \gpl{character}, optionally followed by a \inline$.$ dot, followed by an arbitrary number of \g{numeric} \gpl{character}. This forms a mathematical real number in base-10/decimal representation where the dot denotes the decimal point.
}
\defineglossary{case insensitive}{
When both the lower- and upper-case representation of an \g{alphabetic} \g{character} are treated as \g{equivalent}.
}
\defineglossary{string}{
A sequence of \gpl{character}.
}
\defineglossary{substring}{
A sequence of \gpl{character} within a \g{string}.
}
\defineglossary{text}{
Text is made up of a series of \gpl{string} and \gpl{textual component}.
}
\defineglossary{textual component}{
A section of \g{text} with specific visual \glink{style}{styling}, representation, and interaction properties.
}
\defineglossary{specified textual component}{
A \g{textual component} that is declared in this specification.
}
\defineglossary{resulting textual component}{
The \g{textual component} that the \g{directive} puts in place of the \g{identifier} in the \g{document}.
}
\defineglossary{current component}{
The \g{textual component} on top of the parse stack.
}
\defineglossary{style}{
A \g{style} is an attribute of a \g{textual component} that specifies how the \g{textual component} and its contents are supposed to be visually represented in the \g{document}.
}
\defineglossary{format}{
A particular representation of data.
}
\defineglossary{document}{
1) The top-most \g{textual component} that is not contained in any other \g{textual component}.
2) A \g{string} to be interpreted into a \g{textual component} using rules outlined by \gpl{directive}.
}
\defineglossary{document format}{
A set of grammar and semantics to \glink{interpretation}{interpret} the contents of a \g{document}.
}
\defineglossary{page}{
Every \g{document} consists of one or more \gpl{page}. A page is a container of some physical size within which \g{text} is displayed.
}
\defineglossary{newline}{
Any \g{character} that represents that a new line should be started.
}
\defineglossary{escaping}{
If a \g{character} is preceded by \unicode{5C}, it is ``escaped'' and its semantic meaning is suppressed.
}
\defineglossary{line}{
1) Any sub-sequence within a \g{string} that is delimited by an \glink{escaping}{unescaped} \g{newline}. That is to say, a line always begins at either the beginning of the \g{string} or after the \g{newline}, and always ends at either the end of the \g{string} or with a \g{newline} that is not preceded by the \unicode{5C} \g{character}.
2) A \g{string} that is displayed in a single horizontal row.
}
\defineglossary{empty line}{
A \g{line} that only contains \g{whitespace} and a \g{newline}, or a sole \g{newline}.
}
\defineglossary{match}{
A \g{match} occurs if a \g{string} is exactly recognised by some specific pattern or method.
}
\defineglossary{full match}{
A \g{full match} occurs if a \g{match} occurs and the \g{cursor} is located immediately after the matched \g{string}.
}
\defineglossary{identifier}{
Some form of pattern or method by which a \g{string} is recognisable. More specifically, an \g{identifier} provides a means by which a \g{substring} can be distinguished from the rest of the \g{string}.
}
\defineglossary{identifier specifier}{
A pattern in \sectionref{identifier syntax} to specify the way in which the \g{identifier} can be recognised.
}
\defineglossary{applicable directive}{
A \g{directive} is applicable if it is not a \g{disabled directive}.
}
\defineglossary{directive}{
A directive specifies what happens when the \g{implementation} \glink{match}{matches} a particular \g{identifier}. In particular, it may specify how the input \g{string} is \glink{interpretation}{interpreted} into \g{text} in the \g{document}.
}
\defineglossary{line directive}{
A \g{directive} that spans one or more \gpl{line} as specified in \sectionref{line directives}.
}
\defineglossary{singular line directive}{
A \g{line directive} as specified in \sectionref{singular line directives}.
}
\defineglossary{spanning line directive}{
A \g{line directive} as specified in \sectionref{spanning line directives}.
}
\defineglossary{guarded line directive}{
A \g{line directive} as specified in \sectionref{guarded line directives}.
}
\defineglossary{inline directive}{
A \g{directive} that can appear at any point within a \g{string} as specified in \sectionref{inline directives}.
}
\defineglossary{surrounding inline directive}{
An \g{inline directive} as specified in \sectionref{surrounding inline directives}.
}
\defineglossary{entity inline directive}{
An \g{inline directive} as specified in \sectionref{entity inline directives}.
}
\defineglossary{compound inline directive}{
An \g{inline directive} as specified in \sectionref{compound inline directives}.
}
\defineglossary{equivalent}{
Two objects are considered equivalent, if they denote the same meaning or idea. In specific, two \gpl{character} are equivalent, if they denote the same visual identity.
}
\defineglossary{interpretation}{
The act of detecting \gpl{directive} and executing their effects on a \g{document}.
}
\defineglossary{processing}{
The act of evaluating a \g{directive} on a \glink{match}{matched} \g{string} and translating it into either effects on the \g{parser state} or \gpl{resulting textual component}.
}
\defineglossary{parser state}{
A set of information that the \g{implementation} keeps during \g{interpretation}.
}
\defineglossary{implementation}{
Some form of program or system that implements the semantics of Markless.
}
\defineglossary{implementation dependant}{
The exact implications are up to the \g{implementation} to decide, but must be clearly defined.
}
\defineglossary{conforming implementation}{
An \g{implementation} that fully and correctly adheres to all requirements laid down by this specification. An \g{implementation} may support additional features not described in this specification and still be conforming, as long as none of the features interfere with the \g{interpretation} of a \g{conforming document}.
}
\defineglossary{conforming document}{
A \g{document} that does not violate any of the requirements set forth by the \gpl{directive} outlined in this specification and can thus be properly \glink{interpretation}{interpreted} by any \g{conforming implementation}.
}
\defineglossary{level}{
A number representing the depth of a \g{directive} within the \g{document}. The level within any \g{directive} is one higher than the level the \g{directive} itself is at. The level of the \g{document} is always 0.
}
\defineglossary{binding}{
A \syntax{binding} syntax rule, the content of which is the \g{string} it \glink{match}{matches}.
}
\defineglossary{content binding}{
A \g{binding} with the \syntax{name} \inline$content$.
}
\defineglossary{user}{
Some entity ---usually a human--- that can view and interact with a \g{document}.
}
\defineglossary{action}{
Some form of interaction that a \g{user} viewing a \g{document} can perform.
}
\defineglossary{label}{
1) A unique name within a \g{document} that is associated with a single \g{textual component} of the \g{document}.
2) A \g{textual component} that is associated through a \g{label}.
}
\defineglossary{disabled directive}{
1) A \g{directive} on the \g{implementation}'s internal list of disabled directives.
2) A \g{directive} whose \gpl{identifier} must not be recognised.
3) A \g{directive} that cannot be contained in the \g{current component}.
}
\defineglossary{error}{
A message that indicates a problem with the \g{document} that makes it unable for the \g{interpretation} to proceed. When \glink{signalling}{signalled}, the \g{implementation} must abort \g{interpretation} without producing a resulting \g{document}.
}
\defineglossary{warning}{
A message that indicates a potential problem that occurred during \g{interpretation} that might cause the resulting \g{document} to appear wrong.
}
\defineglossary{signalling}{
The act by which an \g{implementation} can display a message to the \g{user}.
}
\defineglossary{line break mode}{
A \g{variable} of the name \inline$line-break$ that specifies how \g{newline} \gpl{character} are \glink{interpretation}{interpreted} into the output \g{text} of the \g{document}. Only two values are permitted: \inline$show$, \inline$hide$.
}
\defineglossary{instruction}{
An instance of the \sectionref{instruction} \g{directive}.
}
\defineglossary{position}{
A marker for where the \g{implementation} is in the resulting \g{document} during \g{interpretation}.
}
\defineglossary{cursor}{
A marker for where the \g{implementation} is in the inputting \g{document} during \g{interpretation}.
}
\defineglossary{variable}{
A name associated with some internal state of the \g{implementation}. See \sectionref{set}.
}
\defineglossary{standard processing loop}{
The algorithm to \glink{processing}{process} a \g{document} as described in \sectionref{parser steps}.
}
\defineglossary{metadata}{
Metadata is information that is not necessarily directly visible to the \g{user} in the resulting \g{document}.
}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "markless"
%%% TeX-engine: luatex
%%% TeX-command-extra-options: "-shell-escape"
%%% End: