%==============================================================================% % Start of Cha.tex % %==============================================================================% % % Copyright % --------- % Copyright (C) 1992 Ross N. Williams. % This file contains a chapter of the FunnelWeb User's Manual. % See the main TeX file for this manual for further information. % %==============================================================================% \appendix %============================================================================== \chapter{Glossary} \x{glossary} \gloss{Analyser} A component of the FunnelWeb program that checks the macro table created by the parser for errors. For example, the analyser checks to see if any macro without a \p{@Z} has not been called. \gloss{Argument} A string delimited by blanks appearing on the FunnelWeb command line. Arguments are used to control options. \gloss{Directive} A FunnelWeb special sequence or cooperating group of special sequences that do not form part of a macro definition. A directive can take the form of a pragma. \gloss{Documentation} Descriptive text. \gloss{Documentation file} An output file, produced by the Weave component of FunnelWeb, that contains typesetter commands. When fed into the appropriate typesetter program, the result is a typeset image of the input file. \gloss{Free text} The text in an input file that remains if one were to remove macro definitions and directives. \gloss{FunnelWeb} This word has a number of different meanings all pertaining to the FunnelWeb system of programming. 1) The entire system of programming as in \dq{Maybe FunnelWeb can help.} 2) The computer program that implements the system as in \dq{Run it through FunnelWeb and see what comes out.} 3) The language implemented by the FunnelWeb program as in \dq{I wrote the program in FunnelWeb.} or \dq{I wrote the program in Ada using FunnelWeb.}. \gloss{FunnelWeb file} A file whose contents are written in the FunnelWeb language. \gloss{FunnelWeb language} The language in which FunnelWeb input files are written. \gloss{FunnelWeb proper} Usually, when FunnelWeb is invoked, it processes a single input file and then terminates. However, it also has a command language mode in which it is possible to invoke \dq{FunnelWeb} many times. This leads to confusion between \dq{FunnelWeb} the outer program and \dq{FunnelWeb} the inner program. To avoid this confusion, the inner FunnelWeb is sometimes referred to as \dq{FunnelWeb proper}. \gloss{FW} An abbreviation for \dq{FunnelWeb} that is used wherever appropriate. \gloss{Include file} A file read in by FunnelWeb as the result of an include pragma (\p{@i filename}). \gloss{Input file} Any file read in by FunnelWeb. The phrase \dq{the input file} refers to the root input file (specified using the \p{+F} option). \gloss{Journal file} An output file containing a copy of the output sent to the user's console during an invocation of FunnelWeb. In other systems, this file is sometimes called a \dq{log file}. \gloss{Listing file} An output file summarizing the result of processing an input file. \gloss{Macro} A binding of a name to a string. \gloss{Macro definition} A construct appearing in a FunnelWeb file that binds a name to a text string. A FunnelWeb file consists of a series of macro definitions surrounded by documentary text. \gloss{Mapper} A component of the FunnelWeb program that reads in the input file and creates a copy of it in memory. \gloss{Option} An parameter internal to the FunnelWeb program which can be controlled by command line arguments or pragmas. \gloss{Output file} Any file written by FunnelWeb. This includes listing, journal, product, and documentation files. (Warning: During most of FunnelWeb's development the term \dq{output file} was also used to refer to what are now called \dq{product files}. This turned out to be extremely confusing and so the term \dq{product file} was invented to distinguish the generic from the specific. However, as this was a late modification, you may find some occurrences of the old use of \dq{output file}.). \gloss{Parser} A component of the FunnelWeb program that processes the token list generated by the scanner and produces a macro table and a document list. The parser mainly analyses the input file at the syntactic level, but also does some lightweight semantic checking too. \gloss{Pragma} Single-line directives that appears in FunnelWeb files. Pragmas control everything from maximum input line length to typesetter dependence. A pragma line starts with \dqp{@p}. \gloss{Printed documentation} Sheets of paper resulting from actually typesetting and printing a documentation file. \gloss{Product file} An output file, generated by the Tangle component of FunnelWeb, that contains the expansion of the macros in the input file. Note: Other names considered for this were: generated file, expanded file, result file, program file, and tangle file. \gloss{Scanner} A component of the FunnelWeb program that scans a copy of the input file in memory and generates a line list and a token list to be fed to the parser. The scanner processes the input at the lexical level. \gloss{Script} A file containing FunnelWeb shell commands. \gloss{Shell} A command language interpreter built into the FunnelWeb program. The interpreter allows the user to invoke FunnelWeb proper many times during a single invocation of the FunnelWeb program. \gloss{Special character} A distinguished character in a FunnelWeb input file that introduces a special sequence. By default the special character is \dqp{@}. However, it can be changed using the \dqp{@=} special sequence. \gloss{Special sequence} A special sequence is a construct introduced by the special character. Special sequences are used to define a structure in a FunnelWeb input file that exists at a higher level to the surrounding text. A FunnelWeb input file may be considered to be a sequence of text and special sequences. \gloss{Tangle} This is the name for the component of FunnelWeb that generates one or more product files containing the expansion of macros in the input file. \gloss{Typesetting directive} A FunnelWeb directive whose sole effect is to modify the way in which the input file is represented in the documentation file. \gloss{Weave} This is the name for the component of FunnelWeb that generates a documentation file containing typesetting commands representing the input file. %============================================================================== \chapter{References} \x{references} \paper{ANSI} Australian Standard AS~3955-1991, \dq{Programming Languages --- C}, (ISBN: 0-7262-6970-0), 12~July~1991. Identical to: International Standard ISO/IEC 9899: 1990 Programming Languages --- C.\checked{} \paper{ANZE} \dq{Australia, New Zealand Encyclopedia}, Entry: \dq{Funnel-web spiders}, Vol~7, pp.~564--565, Bay Books, Sydney, (ISBN: 85835--127--7), 1975.\checked{} \paper{BSI82} British Standards Institute, \dq{Specification for Computer Programming Language Pascal}, Publication BS6192:1982, British Standards Institute, P.O. Box 372, Milton Keynes, MK146LO, 1982.\checked{} \paper{Gries81} Gries~D., \dq{The Science of Programming}, Springer-Verlag, (ISBN: 0-387-90641-X), 1981. \paper{Humphries91} Humphries~B, \dq{Neglected Poems and Other Creatures}, Angus and Robertson, Sydney, (ISBN: 0-207-17212-9), 1991.\checked{} \paper{Kernighan88} Kernighan~B.W., Ritchie~D.M., \dq{The~C Programming Language}, (second edition,\dq{ANSI~C}), Prentice Hall, (ISBN: 0-13-110362-8), 1988.\checked{} \paper{Knuth83} Knuth~D.E., \dq{The WEB System of Structured Documentation}, (Web User Manual, Version~2.5, November, 1983), Stanford University, 1983. \paper{Knuth84} Knuth~D.E., \dq{The \TeX{}book}, Addison-Wesley, (ISBN: 0-201-13448-9), 1984. \paper{Knuth84} Knuth~D.E., \dq{Literate Programming}, \i{The Computer Journal}, Vol.~27, No.~2, pp.~97-111, 1984.\checked{Reference copied from SIGPLAN 26(1) p.16} Note: The author of this manual has not yet obtained this paper. \paper{Lamport86} Lamport~L., \dq{\LaTeX{}: A Document Preparation System}, Addison-Wesley, (ISBN: 0-201-15790-X), 1986.\checked{} \paper{Rosovsky90} Rosovsky~H., \dq{The University: An Owner's Manual}, W.W.Norton \& Company, Inc., (ISBN: 0-393-02782-1), 1990.\checked{} \paper{Smith91} Smith~L.M.C., \dq{An Annotated Bibliography of Literate Programming}, ACM SIGPLAN Notices, Vol.~26, No.~1, January 1991.\checked{} \paper{Strunk79} Strunk~W., White~E.B., \dq{The Elements of Style}, Third Edition, MacMillan Publishing Company, New York, (ISBN: 0-02-418200-1), 1979.\checked{} \paper{USDOD83} \dq{The Programming Language Ada Reference Manual}, American National Standards Institute Inc, ANSI/MIL-STD-1815A-1983, 1983.\checked{} %============================================================================== \addcontentsline{toc}{chapter}{Index} \def\indexentry#1#2{\item #1~#2} \begin{theindex} \input u_manual.sin \end{theindex} %==============================================================================% % End of Cha.tex % %==============================================================================%