Commit 3c7f2276 authored by pknaggs's avatar pknaggs
Browse files

Final 2012 release

parent 84812ee8
Loading
Loading
Loading
Loading
+32 −35
Original line number Diff line number Diff line
@@ -116,7 +116,7 @@
	\end{testing}
\end{worddef}


\pagebreak
\begin{worddef}{0070}{'}[tick]
\item \stack{"<spaces>name"}{xt}

@@ -426,7 +426,7 @@
	\end{testing}
\end{worddef}


\newpage
\begin{worddef}{0150}{,}[comma]
\item \stack{x}{}

@@ -552,7 +552,7 @@
	\end{testing}
\end{worddef}


\enlargethispage{4ex}
\begin{worddef}{0230}{/}[slash]
\item \stack{n_1 n_2}{n_3}

@@ -596,7 +596,7 @@
	\end{testing}
\end{worddef}


\enlargethispage{10ex}
\begin{worddef}{0240}{/MOD}[slash-mod]
\item \stack{n_1 n_2}{n_3 n_4}

@@ -718,7 +718,7 @@
	\end{testing}
\end{worddef}


\newpage
\begin{worddef}{0320}{2*}[two-star]
\item \stack{x_1}{x_2}

@@ -1346,7 +1346,7 @@
	\wref{core:ALIGN}{}.
\end{worddef}


\vspace*{-5ex}
\begin{worddef}{0710}{ALLOT}
\item \stack{n}{}

@@ -1464,7 +1464,7 @@
	\end{testing}
\end{worddef}


\enlargethispage{8ex}
\begin{worddef}{0770}{BL}[b-l]
\item \stack{}{char}

@@ -2072,7 +2072,7 @@
	\end{testing}
\end{worddef}


\newpage
\begin{worddef}{1360}{EVALUATE}
\item \stack{i*x c-addr u}{j*x}

@@ -2172,7 +2172,7 @@
	\end{testing}
\end{worddef}


\enlargethispage{4ex}
\begin{worddef}{1550}{FIND}
\item \stack{c-addr}{c-addr 0 | xt 1 | xt -1}

@@ -2408,7 +2408,7 @@
	\end{testing}
\end{worddef}


\enlargethispage{2ex}
\begin{worddef}{1700}{IF}
\interpret
	Interpretation semantics for this word are undefined.
@@ -2648,8 +2648,7 @@
	\end{rationale}
\end{worddef}



\newpage
\begin{worddef}{1760}{LEAVE}
\interpret
	Interpretation semantics for this word are undefined.
@@ -2750,6 +2749,7 @@
	\rref{core:LOOP}{}.

	\begin{rationale} % A.6.1.1800 LOOP
		\enlargethispage{2ex}
		Typical use:

		\tab \word{:} \texttt{X} {\ldots}
@@ -2976,7 +2976,7 @@
	\end{testing}
\end{worddef}


\enlargethispage{4ex}
\begin{worddef}{1910}{NEGATE}
\item \stack{n_1}{n_2}

@@ -3138,7 +3138,7 @@
	\end{implement}
\end{worddef}


\enlargethispage{4ex}
\begin{worddef}[Rfrom]{2060}{R>}[r-from]
\interpret
	Interpretation semantics for this word are undefined.
@@ -3781,7 +3781,7 @@
	\end{testing}
\end{worddef}


\newpage
\begin{worddef}{2380}{UNLOOP}
\interpret
	Interpretation semantics for this word are undefined.
@@ -3898,7 +3898,7 @@
	\end{testing}
\end{worddef}


\newpage
\begin{worddef}{2430}{WHILE}
\interpret
	Interpretation semantics for this word are undefined.
@@ -4130,7 +4130,7 @@
	\end{testing}
\end{worddef}


\newpage
\section{Core extension words} % 6.2
\extended

@@ -4244,7 +4244,7 @@
	\end{rationale}
\end{worddef}


\newpage
\begin{worddef}[2Rfrom]{0410}{2R>}[two-r-from]
\interpret
	Interpretation semantics for this word are undefined.
@@ -4333,8 +4333,7 @@
		\tab \word{DEFER} \texttt{print} \\[2ex]
		\tab \word{:NONAME} \word{p} n -{}- ) \word{d} \word{;} \word{IS} \texttt{print}

	\note \word{RECURSE} and \word{DOES} \replace{ed14}{shall work}{ are allowed} within
		a \word{:NONAME} definition.
	\note \word{RECURSE} and \word{DOES} are allowed within a \word{:NONAME} definition.
	\end{rationale}

	\begin{testing}
@@ -4682,7 +4681,7 @@
	\end{testing}
\end{worddef}


\newpage
\begin{worddef}{0873}{CASE}
\interpret
	Interpretation semantics for this word are undefined.
@@ -4792,7 +4791,7 @@
		the classic interpreter/com\-piler loop:

		\begin{quote}\ttfamily
		\ldots 										\tab[22]	\word{p} c-addr ) \\
		\ldots 										\tab[23.8]\word{p} c-addr ) \\
		\word{FIND} \word{qDUP} \word{IF}			\tab[17.2]	\word{p} xt +-1 ) \\
		\tab \word{STATE} \word{@} \word{IF}		\tab[17.4]	\word{p} xt +-1 ) \\
			\tab[2] \word{0more} \word{IF} \ 
@@ -5179,7 +5178,7 @@
	\end{testing}
\end{worddef}


\newpage
\begin{worddef}{1850}{MARKER}
\item \stack{"<spaces>name"}{}

@@ -5351,7 +5350,7 @@

			\begin{enumerate}
			\item The characters accepted by \word{WORD} must be
				copied from the input buffer into a \replace{ed14}{temporary}{transient} buffer,
				copied from the input buffer into a transient buffer,
				in order to make room for the count character that
				must be at the beginning of the counted string. The
				copy step is inefficient, compared to \word{PARSE},
@@ -5359,7 +5358,7 @@
				need to copy it anywhere.

			\item \word{WORD} must be careful not to store too many
				characters into the \replace{ed14}{temporary}{transient} buffer, thus overwriting
				characters into the transient buffer, thus overwriting
				something beyond the end of the buffer. This adds to
				the overhead of the copy step. (\word{WORD} may have
				to scan a lot of characters before finding the trailing
@@ -5370,7 +5369,7 @@
				strings can easily be stored in blocks!). This
				limitation does not exist for \word{PARSE}.

			\item The \replace{ed14}{temporary}{transient} buffer is typically overwritten by the
			\item The transient buffer is typically overwritten by the
				next use of \word{WORD}.
			\end{enumerate}

@@ -5508,7 +5507,7 @@
	\end{rationale}
\end{worddef}


\vspace*{-6ex}
\begin{worddef}{2148}{RESTORE-INPUT}
\item \stack{x_n {\ldots} x_1 n}{flag}

@@ -5541,7 +5540,7 @@
\end{worddef}

% -------------------------------------------------------------------

\enlargethispage{4ex}
\begin{worddef}[Seq]{2266}{S\bs"}[s-backslash-quote][X:escaped-strings]

\interpret
@@ -5577,8 +5576,7 @@
			The resulting character is the conversion of these two hexadecimal
			digits. An ambiguous conditions exists if \texttt{\bs{x}} is not
			followed by two hexadecimal characters.} \\
		\texttt{\bs\bs} & \multicolumn{2}{l}{backslash itself} & (ASCII 92) \\
	\end{tabular}
		\texttt{\bs\bs} & \multicolumn{2}{l}{backslash itself} & (ASCII 92) 		\end{tabular}

	An ambiguous condition exists if a \bs{} is placed before any character,
	other than those defined in here.
@@ -5835,7 +5833,7 @@
%	\end{rationale}
%\end{worddef}


\enlargethispage{4ex}
\begin{worddef}{2295}{TO}
\interpret
	\stack{i*x "<spaces>name"}{}
@@ -5856,10 +5854,6 @@
	An ambiguous condition exists if \param{name} was not defined
	by a word with ``TO \param{name} run-time'' semantics.

\cbstart\runtime\patch{ed14}
	\stack{}{}\strike{2}{80}
\cbend

\note
	An ambiguous condition exists if any of	\word{POSTPONE},
	\word{[COMPILE]}, \word{'} or \word{[']} are applied to
@@ -6111,6 +6105,9 @@
	otherwise append the execution semantics of \param{name}. An
	ambiguous condition exists if \param{name} is not found.

\note This word is obsolescent and is included as a concession to
	existing implementations.

\see \xref[3.4.1 Parsing]{usage:parsing},
	\rref{core:[COMPILE]}{}.