diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/expl3/source3.tex')
-rw-r--r-- | Master/texmf-dist/source/latex/expl3/source3.tex | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/Master/texmf-dist/source/latex/expl3/source3.tex b/Master/texmf-dist/source/latex/expl3/source3.tex index 2fd332f5563..8a3459a1d60 100644 --- a/Master/texmf-dist/source/latex/expl3/source3.tex +++ b/Master/texmf-dist/source/latex/expl3/source3.tex @@ -225,6 +225,24 @@ Variables end with a short identifier to show the variable type: \item[\texttt{toks}] Token register. \end{description} +\subsubsection{Terminological inexactitude} + +A word of warning. In this document, and others referring to the \pkg{expl3} +programming modules, we often refer to `variables' and `functions' as if +they were actual constructs from a real programming language. +In truth, \TeX\ is a macro processor, and functions are simply macros that +may or mayn't take arguments and expand to their replacement text. +Many of the common variables are \emph{also} macros, and if placed into the +input stream will simply expand to their definition as well~--- a `function' +with no arguments and a `token list variable' are in truth one and the same. +On the other hand, some `variables' are actually registers that must be initialised and their values set and retreived with specific functions. + +The conventions of the \pkg{expl3} code are designed to clearly separate the +ideas of `macros that contain data' and `macros that contain code', and a consistent wrapper is applied to all forms of `data' whether they be macros or actually registers. +This means that sometimes we will use phrases like `the function returns a value', when actually we just mean `the macro expands to something'. Similarly, the term `execute' might be used in place of `expand' or it might refer to the more specific case of `processing in \TeX's stomach' (if you are familiar with the \TeX{}book parlance). + +If in doubt, please ask; chances are we've been hasty in writing certain definitions and need to be told to tighten up our terminology. + \section{Documentation conventions} This document is typeset with the experimental \pkg{l3doc} class; @@ -238,7 +256,7 @@ a ``user'' name, this might read: \ExplSyntaxOff } \begin{syntax} - "\ExplSyntaxOn" + "\ExplSyntaxOn" \dots\ "\ExplSyntaxOff" \end{syntax} The textual description of how the function works would appear here. The syntax of the function is shown in mono-spaced text to the right of |