Commit eacba1de authored by pknaggs's avatar pknaggs

Remvoed 13.1 markup and added RC2 pagination

parent 9655f24e
This diff is collapsed.
This diff is collapsed.
......@@ -664,6 +664,7 @@ Extensions word sets.
\end{worddef}
\pagebreak
\subsection{Double-Number extension words} % 8.6.2
\extended
......
......@@ -16,14 +16,6 @@ The \word{THROW} values \{-255{\ldots}-1\} shall be used only as
assigned by this standard. The values \{-4095{\ldots}-256\}
shall be used only as assigned by a system.
\remove{x:throw-iors}{%
If the File-Access or Memory-Allocation word sets are implemented,
it is recommended that the non-zero values of \emph{ior} lie within
the range of system \word{THROW} values, as defined above. In an
operating-system environment, this can sometimes be accomplished
by ``biasing'' the range of operating-system exception codes to fall
within the \word{THROW} range.}
Programs shall not define values for use with \word{THROW} in the
range \{-4095{\ldots}-1\}.
......@@ -244,6 +236,7 @@ The phrase ``Requiring the Exception Extensions word set'' shall be
appended to the label of Standard Programs that require the system
to provide all of the Exception and Exception Extensions word sets.
\pagebreak
\section{Glossary} % 9.6
\subsection{Exception words} % 9.6.1
......@@ -450,6 +443,7 @@ to provide all of the Exception and Exception Extensions word sets.
\end{worddef}
\pagebreak
\subsection{Exception extension words} % 9.6.2
\extended
......
......@@ -173,6 +173,7 @@ to provide all of the Facility and Facility Extensions word sets.
the application must use \word{KEYq} and \word[core]{KEY} only
when it wishes to discard non-character events until a valid
character is received.
\pagebreak
\end{rationale}
\end{worddef}
......@@ -399,7 +400,7 @@ to provide all of the Facility and Facility Extensions word sets.
\stack{addr_1}{addr_2}
Add the \param{offset} calculated during the compile time action to
\param{addr_1} giving the \remove{ed13}{character aligned} address \param{addr_2}.
\param{addr_1} giving the address \param{addr_2}.
\see \wref{facility:+FIELD}{+FIELD},
\wref{facility:BEGIN-STRUCTURE}{BEGIN-STRUCTURE}, \\
......@@ -473,7 +474,7 @@ to provide all of the Facility and Facility Extensions word sets.
% -------------------------------------------------------------------
\pagebreak
\begin{worddef}[EKEYtoFKEY]{1306}[40]{EKEY>FKEY}[e-key-to-f-key][X:ekeys]
\item \stack{x}{u flag}
......@@ -519,45 +520,15 @@ to provide all of the Facility and Facility Extensions word sets.
\begin{rationale} % A.10.6.2.---- EKEY>FKEY
\cbstart\patch{ed13}
\sout{%
This words has been provided to allow for systems which may not
be able to interpret the value returned from \word{EKEY}
directly. A simple implementation for a system which is capable
of interpreting the value returned from \word{EKEY} would be:}
\begin{quote}
\ttfamily
\sout{\word{:} \word{EKEYtoFKEY} \word{p} u1 -{}- u2 flag )} \\
\tab \sout{\word{DUP} \word{EKEYtoCHAR} \word{NIP} \word{0=} \word{;}}
\end{quote}
\sout{%
The value returned from \word{EKEYtoFKEY} can be interpreted
via a set of pre-defined constants and masks. This provides
the application programmer with the ability to process the
non-ASCII keys in a standard way. Note however, that not all
keyboards provide these keys. Indeed, some devices will not
have a keyboard. A standard program should be written in such
a way that they will continue to work without these additional
keys. Albeit with a limited or reduced functionality.}
\sout{%
The \texttt{K-}{\ldots} words produce the same values that the
sequence \word{EKEY} \word{EKEYtoFKEY} may produce when the
user presses the corresponding keys. Note that some systems
may lack some of the keys, or the system the capability to
report them. Programs should be written such that they continue
to work (although less conveniently or with less functionality)
if these key combinations cannot be produced.}
\uline{%
\word{EKEY} produces an abstract cell type for a keyboard event (e.g., a
keyboard scan code). \word{EKEYtoFKEY} checks if such an event
corresponds to a special (non-graphic) key press, and if so, returns
a code for the special key press. The encoding of special keys (returned
by \word{EKEYtoFKEY}) may be different from the encoding of these
keys as keyboard events (input to \word{EKEYtoFKEY}).}
\word{EKEY} produces an abstract cell type for a keyboard
event (e.g., a keyboard scan code). \word{EKEYtoFKEY} checks
if such an event corresponds to a special (non-graphic) key
press, and if so, returns a code for the special key press.
The encoding of special keys (returned by \word{EKEYtoFKEY})
may be different from the encoding of these keys as keyboard
events (input to \word{EKEYtoFKEY}).
Typical Use:
......@@ -576,83 +547,50 @@ to provide all of the Facility and Facility Extensions word sets.
\word{THEN}
\end{quote}
\uline{%
The codes for the special keys are system-dependent, but this
standard provides words for getting the key codes for a number
of keys:}
of keys:
\begin{center}
\begin{tabular}{llcll}
\hline
\uline{Word} & \uline{Key} & \hspace{2em} & \uline{Word} & \uline{Key} \\ \hline\hline
\uline{\word{K-F1}} & \uline{F1} & & \uline{\word{K-LEFT}} & \uline{cursor left} \\
\uline{\word{K-F2}} & \uline{F2} & & \uline{\word{K-RIGHT}} & \uline{cursor right} \\
\uline{\word{K-F3}} & \uline{F3} & & \uline{\word{K-UP}} & \uline{cursor up} \\
\uline{\word{K-F4}} & \uline{F4} & & \uline{\word{K-DOWN}} & \uline{cursor down} \\
\uline{\word{K-F5}} & \uline{F5} & & \uline{\word{K-HOME}} & \uline{home or Pos1} \\
\uline{\word{K-F6}} & \uline{F6} & & \uline{\word{K-END}} & \uline{End} \\
\uline{\word{K-F7}} & \uline{F7} & & \uline{\word{K-PRIOR}} & \uline{PgUp or Prior} \\
\uline{\word{K-F8}} & \uline{F8} & & \uline{\word{K-NEXT} } & \uline{PgDn or Next} \\
\uline{\word{K-F9}} & \uline{F9} & & \uline{\word{K-INSERT}} & \uline{Insert} \\
\uline{\word{K-F10}} & \uline{F10} & & \uline{\word{K-DELETE}} & \uline{Delete} \\
\uline{\word{K-F11}} & \uline{F11} \\
\uline{\word{K-F12}} & \uline{F12} \\ \hline
Word & Key & \hspace{2em} & Word & Key \\ \hline\hline
\word{K-F1} & F1 & & \word{K-LEFT} & cursor left \\
\word{K-F2} & F2 & & \word{K-RIGHT} & cursor right \\
\word{K-F3} & F3 & & \word{K-UP} & cursor up \\
\word{K-F4} & F4 & & \word{K-DOWN} & cursor down \\
\word{K-F5} & F5 & & \word{K-HOME} & home or Pos1 \\
\word{K-F6} & F6 & & \word{K-END} & End \\
\word{K-F7} & F7 & & \word{K-PRIOR} & PgUp or Prior \\
\word{K-F8} & F8 & & \word{K-NEXT} & PgDn or Next \\
\word{K-F9} & F9 & & \word{K-INSERT} & Insert \\
\word{K-F10} & F10 & & \word{K-DELETE} & Delete \\
\word{K-F11} & F11 \\
\word{K-F12} & F12 \\ \hline
\end{tabular}
\end{center}
\uline{%
In addition, you can get codes for shifted variants of these keys by
\word{OR}ing with \word{K-SHIFT-MASK}, \word{K-CTRL-MASK}
In addition, you can get codes for shifted variants of these
keys by \word{OR}ing with \word{K-SHIFT-MASK}, \word{K-CTRL-MASK}
and/or \word{K-ALT-MASK}, e.g. \word{K-CTRL-MASK}
\word{K-ALT-MASK} \word{OR} \word{K-DELETE} \word{OR}.
The masks for the shift keys are:
}
\begin{center}
\begin{tabular}{ll}
\hline
\uline{Word} & \uline{Key} \\ \hline\hline
\uline{\word{K-SHIFT-MASK}} & \uline{Shift} \\
\uline{\word{K-CTRL-MASK}} & \uline{Ctrl} \\
\uline{\word{K-ALT-MASK}} & \uline{Alt} \\ \hline
Word & Key \\ \hline\hline
\word{K-SHIFT-MASK} & Shift \\
\word{K-CTRL-MASK} & Ctrl \\
\word{K-ALT-MASK} & Alt \\ \hline
\end{tabular}
\end{center}
\uline{%
Note that not all of these keys are available on all systems, and not
all combinations of keys and shift keys are available. Therefore
programs should be written such that they continue to work (although
less conveniently or with less functionality) if these key combinations
cannot be produced.}
\item[\sout{\word{EKEY} return values}] ~\\
\sout{ The intention behind \word{EKEY} was that it would return the
implementation defined keyboard scan code. The implementation
defined nature of the value means that a standard program may
not use the value in any way, other than passing it on to
\word{EKEYtoCHAR} to convert it into an ASCII character.}
\sout{%
\word{EKEYtoFKEY} has been designed to be used in a similar
manner. It provides an implementation defined value which
corresponds to non-ASCII keys, or a combination thereof. A
standard program may check which key combination has been used
via a set of pre-defined constants.}
\item[\sout{Shift keys}] ~\\
\sout{Note that, as defined, the shift key masks
(\wref{facility:K-SHIFT-MASK}{K-SHIFT-MASK},
\linebreak
\wref{facility:K-CTRL-MASK}{K-CTRL-MASK} and
\wref{facility:K-ALT-MASK}{K-ALT-MASK})
are only useful for recognizing shifted cursor and function
keys, because these are the only values defined for use with
\word{EKEYtoFKEY}.
E.g., a standard program cannot recognize \textsc{Alt-T},
because no \word{EKEY} return value for \texttt{T} has been
defined.}
\cbend
cannot be produced.
\end{rationale}
\begin{implement} % I.10.6.2.--- EKEY>FKEY
......@@ -730,7 +668,7 @@ to provide all of the Facility and Facility Extensions word sets.
\end{worddef}
% -------------------------------------
\enlargethispage{2ex}
\begin{worddef}{1336}{END-STRUCTURE}[][X:structures]
\item \stack{struct-sys +n}{}
......@@ -749,6 +687,7 @@ to provide all of the Facility and Facility Extensions word sets.
\end{worddef}
\pagebreak
\begin{worddef}{1518}{FIELD:}[field-colon][X:structures]
\item \stack{n_1 "<spaces>name"}{n_2}
......@@ -763,7 +702,7 @@ to provide all of the Facility and Facility Extensions word sets.
\stack{addr_1}{addr_2}
Add the \param{offset} calculated during the compile time action
to \param{addr_1} giving the \remove{ed13}{cell aligned} address \param{addr_2}.
to \param{addr_1} giving the address \param{addr_2}.
\see \wref{facility:+FIELD}{+FIELD},
\wref{facility:BEGIN-STRUCTURE}{BEGIN-STRUCTURE}, \\
......
% !TeX root = forth.tex
% !TeX spellcheck = en_US
\chapter{The optional File-Access word set} % 11
\wordlist{file}
......@@ -40,7 +43,6 @@ under the following assumptions:
Append table \ref{file:types} to table \ref{table:datatypes}.
\patch{x:throw-iors}
\begin{table}[h]
\begin{center}
\caption{Data types}
......@@ -49,9 +51,6 @@ Append table \ref{file:types} to table \ref{table:datatypes}.
\hline\hline
\emph{Symbol} & \emph{Data type} & \emph{Size on stack} \\
\hline
\cbstart
\sout{\emph{ior}} & \sout{I/O results} & \sout{1 cell} \\
\cbend
\emph{fam} & file access method & 1 cell \\
\emph{fileid} & file identifier & 1 cell \\
\hline\hline
......@@ -66,24 +65,8 @@ that are passed to file operators to designate specific files.
Opening a file assigns a file identifier, which remains valid
until closed.
\cbstart\patch{x:throw-iors}
\subsubsection[I/O results]{\sout{I/O results}} % 11.3.1.2
\label{file:ior}
\sout{%
I/O results are single-cell numbers indicating the result of I/O
operations. A value of zero indicates that the I/O operation
completed successfully; other values and their meanings are
implementation-defined. Reaching the end of a file shall be
reported as zero.}
\sout{%
An I/O exception in the execution of a File-Access word that can
return an I/O result shall not cause a \word[exception]{THROW};
exception indications are returned in the \emph{ior}.}
\cbend
\subsubsection{File access methods} % 11.3.1.3
\setcounter{subsubsection}{2}
\subsubsection{File access methods (11.3.1.3)} % 11.3.1.3
File access methods are implementation-defined single-cell
values.
......@@ -178,7 +161,6 @@ See: \xref[3.4.1 Parsing]{usage:parsing}.
\item input file state after an exception
(\wref{file:INCLUDE-FILE}{INCLUDE-FILE},
\wref{file:INCLUDED}{INCLUDED});
\item \remove{x:throw-iors}{\emph{ior} values and meaning} (\xref[11.3.1.2 I/O results]{file:ior});
\item maximum depth of file input nesting
(\xref[11.3.4 Input source]{file:source});
\item maximum size of input line (\xref[11.3.6 Parsing]{file:parsing});
......@@ -296,6 +278,7 @@ provide all of the File Access and File Access Extensions word sets.
\end{worddef}
\enlargethispage{2ex}
\begin{worddef}{0765}{BIN}
\item \stack{fam_1}{fam_2}
......@@ -431,6 +414,7 @@ provide all of the File Access and File Access Extensions word sets.
\end{worddef}
\pagebreak
\begin{worddef}{1717}{INCLUDE-FILE}
\item \stack{i*x fileid}{j*x}
......@@ -884,6 +868,7 @@ provide all of the File Access and File Access Extensions word sets.
\end{worddef}
\enlargethispage{6ex}
\begin{worddef}{2425}{W/O}[w-o]
\item \stack{}{fam}
......
......@@ -340,7 +340,7 @@ word sets.
\subsection{Floating-Point words} % 12.6.1
\enlargethispage{2ex}
\begin{worddef}[toFLOAT]{0558}{>FLOAT}[to-float]
\item \stack{c-addr u}{true | false}
\stack[F]{}{r |~} or
......@@ -480,11 +480,11 @@ word sets.
\param{d} is the double-cell signed-integer equivalent of the
integer portion of \param{r}. The fractional portion of \param{r}
is discarded. An ambiguous condition exists if the integer portion
of \param{r} cannot be \remove{ed13}{precisely} represented as a double-cell
of \param{r} cannot be represented as a double-cell
signed integer.
\note \place{ed13}{Rounding the floating-point value prior to calling \word{FtoD} is
advised, because \word{FtoD} rounds towards zero.}
\note Rounding the floating-point value prior to calling \word{FtoD}
is advised, because \word{FtoD} rounds towards zero.
\end{worddef}
......@@ -673,6 +673,7 @@ word sets.
\end{worddef}
\vspace*{-0.5ex}
\begin{worddef}{1620}{FSWAP}[f-swap]
\item \stack[F]{r_1 r_2}{r_2 r_1} or
\stack{r_1 r_2}{r_2 r_1}
......@@ -681,6 +682,7 @@ word sets.
\end{worddef}
\vspace*{-0.5ex}
\begin{worddef}{1630}{FVARIABLE}[f-variable]
\item \stack{"<spaces>name"}{}
......@@ -708,7 +710,8 @@ word sets.
\end{rationale}
\end{worddef}
\vspace*{-0.5ex}
\enlargethispage{6ex}
\begin{worddef}{2143}{REPRESENT}
\item \stack{c-addr u}{n flag_1 flag_2} \stack[F]{r}{} or
\stack{r c-addr u}{n flag_1 flag_2}
......@@ -812,6 +815,7 @@ word sets.
% ---------------------------------------------------------
\pagebreak
\begin{worddef}{1207}[40]{DFFIELD:}[d-f-field-colon][X:structures]
\item \stack{n_1 "<spaces>name"}{n_2}
......@@ -827,7 +831,7 @@ word sets.
\stack{addr_1}{addr_2}
Add the \param{offset} calculated during the compile time action to
\param{addr_1} giving the \remove{ed13}{double-float aligned} address \param{addr_2}.
\param{addr_1} giving the address \param{addr_2}.
\see \wref{facility:+FIELD}{+FIELD},
\wref{facility:BEGIN-STRUCTURE}{BEGIN-STRUCTURE}, \\
......@@ -864,6 +868,7 @@ word sets.
\end{worddef}
\enlargethispage{8ex}
\begin{worddef}[Fd]{1427}{F.{}}[f-dot]
\item \stack{}{} \stack[F]{r}{} or
\stack{r}{}
......@@ -894,11 +899,11 @@ word sets.
\param{n} is the single-cell signed-integer equivalent of the
integer portion of \param{r}. The fractional portion of
\param{r} is discarded. An ambiguous condition exists if
the integer portion of \param{r} cannot be \remove{ed13}{precisely}
represented as a single-cell signed integer.
the integer portion of \param{r} cannot be represented as a
single-cell signed integer.
\note Rounding the floating-point value prior to calling \word{FtoS} is
advised\place{ed13}{, because \word{FtoS} rounds towards zero}.
advised, because \word{FtoS} rounds towards zero.
\see \wref{floating:StoF}{}.
......@@ -1194,6 +1199,7 @@ word sets.
\end{worddef}
\pagebreak
\begin{worddef}[FEd]{1513}{FE.{}}[f-e-dot]
\item \stack{}{} \stack[F]{r}{} or
\stack{r}{}
......@@ -1262,11 +1268,9 @@ word sets.
\word{FEXPM1} = 3.82983E-4, and \\
convert to percentage = 0.0382983\%.
\end{enumerate}
This \replace{ed13}{is full six-digit accuracy.}{ calculation method allows}
\remove{ed13}{This allows}
the hyperbolic functions to
be computed with \replace{ed13}{usable accuracy}{ six-digit accuracy}. For example, \replace{ed13}{the hyperbolic
sine}{ \textsf{sinh}} can be defined as:
This calculation method allows the hyperbolic functions to be
computed with six-digit accuracy. For example, \textsf{sinh}
can be defined as:
\begin{quote}\ttfamily
\word[core]{:} \word{FSINH}~ \word[core]{p} r1 -{}- r2 ) \\
......@@ -1294,7 +1298,7 @@ word sets.
\stack{addr_1}{addr_2}
Add the \param{offset} calculated during the compile time action to
\param{addr_1} giving the \remove{ed13}{float aligned} address \param{addr_2}.
\param{addr_1} giving the address \param{addr_2}.
\see \wref{facility:+FIELD}{+FIELD},
\wref{facility:BEGIN-STRUCTURE}{BEGIN-STRUCTURE}, \\
......@@ -1400,6 +1404,7 @@ word sets.
\end{worddef}
\vspace*{-0.5ex}
\begin{worddef}{1618}{FSQRT}[f-square-root]
\item \stack[F]{r_1}{r_2} or
\stack{r_1}{r_2}
......@@ -1409,6 +1414,7 @@ word sets.
\end{worddef}
\vspace*{-0.5ex}
\begin{worddef}{1625}{FTAN}[f-tan]
\item \stack[F]{r_1}{r_2} or
\stack{r_1}{r_2}
......@@ -1427,6 +1433,7 @@ word sets.
% ---------------------------------------------------------
\vspace*{-0.5ex}
\begin{worddef}{1627}{FTRUNC}[f-trunc][x:ftrunc]
\item \stack[F]{r_1}{r_2} or \stack{r_1}{r_2}
......@@ -1465,6 +1472,8 @@ word sets.
% ---------------------------------------------------------
\vspace*{-0.5ex}
\enlargethispage{10ex}
\begin{worddef}{1628}{FVALUE}[f-value][X:fvalue]
\item \stack[F]{r}{} \stack{"<spaces>name"}{} or
\stack{r "<spaces>name"}{}
......@@ -1662,7 +1671,7 @@ word sets.
\stack{addr_1}{addr_2}
Add the \param{offset} calculated during the compile time action to
\param{addr_1} giving the \remove{ed13}{single-float aligned} address \param{addr_2}.
\param{addr_1} giving the address \param{addr_2}.
\see \wref{facility:+FIELD}{+FIELD},
\wref{facility:BEGIN-STRUCTURE}{BEGIN-STRUCTURE}, \\
......
......@@ -649,15 +649,15 @@
% First we define the functions which are going to be called by our
% special characters
\newcommand{\stack@sub}[1]{\raisebox{-0.4ex}{\scriptsize #1}} % _
\newcommand{\stack@sup}[1]{\raisebox{0.8ex}{\scriptsize #1}} % ^
\newcommand{\stack@mul}{\ensuremath{\mathbin\times}} % *
\newcommand{\stack@bar}{~\textbar~} % |
\newcommand{\stack@opa}{\ensuremath{\langle}} % <
\newcommand{\stack@cla}{\ensuremath{\rangle}} % >
\newcommand{\stack@sub}[1]{\raisebox{-0.4ex}{\scriptsize #1}} % _
\newcommand{\stack@sup}[1]{\raisebox{0.8ex}{\scriptsize #1}} % ^
\newcommand{\stack@mul}{\ensuremath{\mathbin\times}} % *
\newcommand{\stack@bar}{~\textbar~} % |
\newcommand{\stack@opa}{\ensuremath{\langle}} % <
\newcommand{\stack@cla}{\ensuremath{\rangle}} % >
\newif\if@stack@quote\@stack@quotetrue
\newcommand{\stack@qot}{% % "
\newcommand{\stack@qot}{% % "
\if@stack@quote``\@stack@quotefalse\else''\@stack@quotetrue\fi}
% Now we have to activate the special characters we are going to
......@@ -1451,8 +1451,8 @@
%%{\parskip 0pt \listofprograms} \addcontentsline{toc}{chapter}{\listprogramname}
%\newpage
\include{foreword-ans}
\include{foreword}
%\include{foreword-ans}
\include{process}
\include{members-2x}
%\include{members-x3}
......
......@@ -101,9 +101,8 @@ of a system complies with the definitions documented in this
standard.
\fi
Annex \ref{annex:index} is \remove{ed13}{a list of all the words in all of the
word sets in this standard and serves as} an index of \place{ed13}{all} words
\place{ed13}{defined in this standard}.
Annex \ref{annex:index} is an index of all words defined in this
standard.
\section{Future directions}
......
......@@ -235,7 +235,7 @@ to provide all of the Locals and Locals Extensions word sets.
\subsection{Locals words} % 13.6.1
%\enlargethispage{4ex}
\enlargethispage{4ex}
\begin{worddef}[LOCAL]{0086}{(LOCAL)}[paren-local-paren]
\interpret
Interpretation semantics for this word are undefined.
......@@ -394,9 +394,10 @@ to provide all of the Locals and Locals Extensions word sets.
\rref{local:b:}{}.
\begin{rationale}
The Forth 94 Technical Committee \replace{ed13}{were}{was} unable to identify any common
practice for locals. \replace{ed13}{They}{It} provided a way to define locals and a method
of parsing them in the hope that a common practice would emerge.
The Forth 94 Technical Committee was unable to identify any
common practice for locals. It provided a way to define locals
and a method of parsing them in the hope that a common practice
would emerge.
Since then, common practice has emerged. Most implementations that
provide \word{LOCAL} and \linebreak[1] \word{LOCALS} also provide some form of the
......
......@@ -24,7 +24,7 @@ goto process
:process
title 1/5: Extract support files
%latex% \scrollmode\input forth.tex
perl sort.pl < forth.wrd > forth.wds
rem perl sort.pl < forth.wrd > forth.wds
if x%1 == xhtml goto html
......@@ -68,7 +68,7 @@ rem *.sub Auto generated support files
rem *.undo LEd backup files
rem *.cb* Change Bars
for %%x in (log out toc wrd wds) do if exist forth.%%x del forth.%%x
for %%x in (log out toc wrd) do if exist forth.%%x del forth.%%x
for %%x in (aux sub undo) do del *.%%x
del *.cb*
......
......@@ -32,53 +32,44 @@ Currently the committee has the following voting members:
\makebox[0.5\linewidth][l]{#2} \quad #4 \\[-\baselineskip] \par
}
\member{Dr.\ M. Anton Ertl (Chair)} {\email{anton@mips.complang.tuwien.at}} {Technische Universit\"at Wien} {Wien, Austria}
\member{Dr.\ Peter Knaggs (Editor)} {\email{pjk@bcs.org.uk}} {Independent Member} {Trowbridge, UK}
\member{Willem Botha} {\email{willem.botha@ccssa.com}} {Construction Computer Software (Pty) Ltd} {Cape Town, South Africa}
\member{Andrew Haley} {\email{aph@redhat.com}} {Red Hat UK Ltd.} {Cambridge, UK}
\member{Dr.\ Ulrich Hoffmann} {\email{uho@forth-ev.de}} {FH Wedel} {Wedel, Germany}
\cbstart\patch{ed13}
\member{\uline{Simon Kaphahn}} {\email[+]{Simon\_K99@gmx.de}} {\uline{Independent Member}} {\uline{Munich, Germany}}
\member{Bernd Paysan} {\email{bernd.paysan@gmx.de}} {\sout{Diodes Inc.}\uline{Net2o}} {Munich, Germany}
\cbend
\member{Stephen Pelc} {\email{stephen@mpeforth.com}} {MicroProcessor Engineering Ltd.} {Southampton, UK}
\cbstart\patch{ed13}
\member{\sout{Dr. Bill Stoddart}} {\email[-]{w.j.stoddart@gmail.com}} {\sout{Teesside University}} {\sout{Middlesbrough, UK}}
\member{\uline{Dr.\ Willi Stricker}} {\email[+]{stricker\_w@t-online.de}} {\uline{Independent Member}} {\uline{Springe, Germany}}
\cbend
\member{Leon Wagner} {\email{leon@forth.com}} {FORTH, Inc.} {Los Angeles, USA}
\member{Gerald Wodni} {\email{gerald.wodni@gee.at}} {GEE Solutions} {Wien, Austria}
\member{Dr.\ M. Anton Ertl (Chair)} {\email{anton@mips.complang.tuwien.at}} {Technische Universit\"at Wien} {Wien, Austria}
\member{Dr.\ Peter Knaggs (Editor)} {\email{pjk@bcs.org.uk}} {Independent Member} {Trowbridge, UK}
\member{Willem Botha} {\email{willem.botha@ccssa.com}} {Construction Computer Software (Pty) Ltd} {Cape Town, South Africa}
\member{Andrew Haley} {\email{aph@redhat.com}} {Red Hat UK Ltd.} {Cambridge, UK}
\member{Dr.\ Ulrich Hoffmann} {\email{uho@forth-ev.de}} {FH Wedel} {Wedel, Germany}
\member{Simon Kaphahn} {\email{Simon\_K99@gmx.de}} {Independent Member} {Munich, Germany}
\member{Bernd Paysan} {\email{bernd.paysan@gmx.de}} {Net2o} {Munich, Germany}
\member{Stephen Pelc} {\email{stephen@mpeforth.com}} {MicroProcessor Engineering Ltd.} {Southampton, UK}
\member{Dr.\ Willi Stricker} {\email{stricker\_w@t-online.de}} {Independent Member} {Springe, Germany}
\member{Leon Wagner} {\email{leon@forth.com}} {FORTH, Inc.} {Los Angeles, USA}
\member{Gerald Wodni} {\email{gerald.wodni@gee.at}} {GEE Solutions} {Wien, Austria}
\cbstart\patch{ed13}
\uline{%
The following organizations and individuals have also participated in
this project as committee members. The committee recognizes and
respects their contributions:}
respects their contributions:
\member{\uline{Federico de Ceballos}} {\email[+]{federico.ceballos@unican.es}} {\uline{Universidad de Cantabria}} {\uline{Santander, Spain}}
\member{\uline{Dr.\ Bill Stoddart}} {\email[+]{w.j.stoddart@gmail.com}} {\uline{Teesside University}} {\uline{Middlesbrough, UK}}
\member{\uline{Carsten Strotmann}} {\email[+]{carsten@strotmann.de}} {\uline{Independent Member}} {\uline{Neuenkirchen, Germany}}
\member{Federico de Ceballos} {\email{federico.ceballos@unican.es}} {Universidad de Cantabria} {Santander, Spain}
\member{Dr.\ Bill Stoddart} {\email{w.j.stoddart@gmail.com}} {Teesside University} {Middlesbrough, UK}
\member{Carsten Strotmann} {\email{carsten@strotmann.de}} {Independent Member} {Neuenkirchen, Germany}
\uline{%
The committee would like to thank the following contributors:}
The committee would like to thank the following contributors:
\begin{minipage}[t]{.3\linewidth}
\uline{John Hayes} \\
\uline{Marcel Hendrix} \\
\uline{Gerry Jackson} \\
\uline{Alex McDonald} \\
John Hayes \\
Marcel Hendrix \\
Gerry Jackson \\
Alex McDonald \\
\end{minipage}
\hfill
\begin{minipage}[t]{.3\linewidth}
\uline{Bruce McFarling} \\
\uline{Charles G. Montgomery} \\
\uline{Krishna Myneni} \\
Bruce McFarling \\
Charles G. Montgomery \\
Krishna Myneni \\
\end{minipage}
\hfill
\begin{minipage}[t]{.3\linewidth}
\uline{Howard Oakford} \\
\uline{Elizabeth Rather} \\
\uline{David N. Williams} \\
\end{minipage}
\cbend
\ No newline at end of file
Howard Oakford \\
Elizabeth Rather \\
David N. Williams \\
\end{minipage}
\ No newline at end of file
......@@ -9,34 +9,8 @@ None.
\section{Additional usage requirements} % 14.3
\cbstart\patch{x:throw-iors}
\subsection[I/O Results data type]{\sout{I/O Results data type}} % 14.3.1
\label{mem:ior}
\sout{%
I/O results are single-cell numbers indicating the result of I/O
operations. A value of zero indicates that the I/O operation
completed successfully; other values and their meanings are
implementation-defined.}
\sout{Append table \ref{mem:types} to table \ref{table:datatypes}.}
\begin{table}[h]
\begin{center}
\caption{\sout{Data types}}
\label{mem:types}
\begin{tabular}{llr}
\hline\hline
\sout{\emph{Symbol}} & \sout{\emph{Data type}} & \sout{\emph{Size on stack}} \\
\hline
\sout{\emph{ior}} & \sout{I/O results} & \sout{1 cell} \\
\hline\hline
\end{tabular}
\end{center}
\end{table}
\cbend
\subsection{Allocated regions} % 14.3.3
\setcounter{subsection}{2}
\subsection{Allocated regions (14.3.3)} % 14.3.3
A program may address memory in data space regions made available
by \word{ALLOCATE} or \word{RESIZE} and not yet released by \word{FREE}.
......@@ -47,35 +21,7 @@ See: \xref[3.3.3 Data space]{usage:dataspace}.
\section{Additional documentation requirements} % 14.4
\label{mem:docs}
\cbstart\patch{x:throw-iors}
\uline{None.}
\subsection[System documentation]{\sout{System documentation}} % 14.4.1
\subsubsection[Implementation-defined options]{\sout{Implementation-defined options}} % 14.4.1.1
\begin{itemize}
\item \sout{values and meaning of ior}
(\xref[14.3.1 I/O Results data type]{mem:ior},
\sout{\wref{memory:ALLOCATE}{ALLOCATE},
\wref{memory:FREE}{FREE},
\wref{memory:RESIZE}{RESIZE}.}
\end{itemize}
\subsubsection[]{\sout{Ambiguous conditions}} % 14.4.1.2
\begin{itemize}
\item \sout{no additional requirements.}
\end{itemize}
\subsubsection[]{\sout{Other system documentation}} % 14.4.1.3
\begin{itemize}
\item \sout{no additional requirements.}
\end{itemize}
\subsection[]{\sout{Program documentation}} % 14.4.2
\begin{itemize}
\item \sout{no additional requirements.}
\end{itemize}
\cbend
None.
\section{Compliance and labeling} % 14.5
......@@ -111,11 +57,13 @@ shall be appended to the label of Standard Programs that require
the system to provide all of the Memory-Allocation and
Memory-Al\-lo\-ca\-tion Extensions word sets.
\enlargethispage{10ex}
\vspace*{-1ex}
\section{Glossary} % 14.6
\subsection{Memory-Allocation words} % 14.6.1
\vspace*{-1ex}
\begin{worddef}{0707}{ALLOCATE}
\item \stack{u}{a-addr ior}
......@@ -157,6 +105,7 @@ Memory-Al\-lo\-ca\-tion Extensions word sets.