\uline{The requirement for floating-point numbers to be kept on the data stack
The requirement for floating-point numbers to be kept on the data stack
has been marked as obsolescent. This was previously an environmental
dependency/restriction.}
dependency/restriction.
\begin{description}
\item[\uline{Words Affected:}] ~\\
\uline{All floating-point words.}
\item[Words Affected:] ~\\
All floating-point words.
\item[\uline{Reason:}] ~\\
\uline{The developing of software that may be used with either a combined
\item[Reason:] ~\\
The developing of software that may be used with either a combined
stack or a separate stack is extremely difficult and costly. While
some of the systems surveyed provide a combined floating-point/data
stack, they all provide a separate floating-point stack.}
stack, they all provide a separate floating-point stack.
\item[\uline{Impact:}] ~\\
\uline{Forth 94 programs with an environmental dependency on a separate
floating-point stack become standard programs.}
\item[Impact:] ~\\
Forth 94 programs with an environmental dependency on a separate
floating-point stack become standard programs.
\uline{Forth 94 programs with an environmental dependency on a combined
stack retain the environmental dependency.}
Forth 94 programs with an environmental dependency on a combined
stack retain the environmental dependency.
\uline{Forth 94 programs (without environmental dependency, i.e., those
working on either kind of system) remain standard programs.}
Forth 94 programs (without environmental dependency, i.e., those
working on either kind of system) remain standard programs.
\uline{Forth 94 systems that implement a separate floating-point stack
are now standard systems and no longer have an environmental restriction
on providing a floating-point stack.}
Forth 94 systems that implement a separate floating-point stack
are now standard systems and no longer have an environmental
restriction on providing a floating-point stack.
\uline{Forth 94 systems that implement a combined stack become systems
Forth 94 systems that implement a combined stack become systems
with an environmental restriction of not providing a separate
floating-point stack, but a combined stack.}
floating-point stack, but a combined stack.
\item[\uline{Transition/Conversion:}] ~\\
\uline{Any code that has an environmental dependency on the use of a
combined floating-point/data stack should be ported to use a separate
floating-point stack.}
\item[Transition/Conversion:] ~\\
Any code that has an environmental dependency on the use of a
combined floating-point/data stack should be ported to use a
separate floating-point stack.
\uline{A system that has an environmental restriction on using a
combined floating-point/data stack should consider providing a separate
floating-point stack.}
A system that has an environmental restriction on using a combined
floating-point/data stack should consider providing a separate
floating-point stack.
\end{description}
\patch{x:environment}
\subsection[Using \word{ENVIRONMENT?} to inquire whether a word set is present.]{\uline{Using \word{ENVIRONMENT?} to inquire whether a word set is present.}}% D.7.3
\subsection[Using ENVIRONMENT? to inquire whether a word set is present]{Using \word{ENVIRONMENT?} to inquire whether a word set is present}% D.7.3
\label{diff:environment}
\uline{With the advent of a new standard, it was necessary to review the meaning
of word set queries. Compatibility with Forth 94 demands that a word set
query produce the same result as for Forth 94; i.e., querying for
\texttt{CORE-EXT} returns true only if all the Forth 94 CORE EXT words
are present. The question was how to distinguish between word sets
described by this and subsequent standards.}
With the advent of a new standard, it was necessary to review the
meaning of word set queries. Compatibility with Forth 94 demands
that a word set query produce the same result as for Forth 94; i.e.,
querying for \texttt{CORE-EXT} returns true only if all the Forth 94
CORE EXT words are present. The question was how to distinguish
between word sets described by this and subsequent standards.
\uline{The committee considered adding a year indicator to the word set name
The committee considered adding a year indicator to the word set name
(``\texttt{CORE-EXT-\snapshot}'') or a providing a general query
(``\texttt{Forth-\snapshot}'') which could be combined with the
word-set query. As the committee could find very few examples of the
word-set queries being used, it chose not to update the word set-query
mechanism, but rather to mark it as obsolescent.}
mechanism, but rather to mark it as obsolescent.
\pagebreak
\begin{description}
\item[\uline{Words Affected:}] ~\\
\uline{\word{ENVIRONMENT?}}
\item[Words Affected:] ~\\
\word{ENVIRONMENT?}
\item[\uline{Reason:}] ~\\
\uline{The use of the word-set query to inquire whether a word set is
present in the system has been marked obsolescent. If present the
query indicates the word set, as documented in Forth 94, is available.}
\item[Reason:] ~\\
The use of the word-set query to inquire whether a word set is
present in the system has been marked obsolescent. If present
the query indicates the word set, as documented in Forth 94, is
available.
\item[\uline{Impact:}] ~\\
\uline{Forth 94 did not guarantee the presence of these queries. Many
systems that provided all the words in a particular word set did not
provide the corresponding query. Portable programs are not affected
as they could not rely on this function.}
\item[Impact:] ~\\
Forth 94 did not guarantee the presence of these queries. Many
systems that provided all the words in a particular word set did
not provide the corresponding query. Portable programs are not
affected as they could not rely on this function.
\item[Transition/Conversion:] ~\\
\uline{There is no direct equivalent to determine the presence of a whole
There is no direct equivalent to determine the presence of a whole
word set. The \wref{tools:[DEFINED]}{} and \wref{tools:[UNDEFINED]}{}
words can be used to detect the availability (or otherwise) of individual
words.}
words can be used to detect the availability (or otherwise) of