Digest #161 2021-08-22
Contributions
In section F.3.10 Division, there is a little missed-order in the last sentence:
As the test definitions use the words which have just been tested, the tests must be performed in the order: F.6.1.0240 /MOD, F.6.1.0230 /, F.6.1.1890 MOD, F.6.1.0100 */, and F.6.1.0110 */MOD.
T*/MOD
is referenced in F.6.1.0100 */ but is defined in F.6.1.0110 */MOD, it should be
As the test definitions use the words which have just been tested, the tests must be performed in the order: F.6.1.0240 /MOD, F.6.1.0230 /, F.6.1.1890 MOD, F.6.1.0110 */MOD, and F.6.1.0100 */.
Matteo
Replies
GI5 tests multiple WHILE
s, and compiles correctly on systems that implement WHILE
and REPEAT
correctly. You are supposed to resolve one WHILE
(the latest) at REPEAT
, and leave the others to a matching ELSE
or THEN
.
AFAIK there is only one more word this Standard explicitly declares IMMEDIATE i.e.
\
the comment till EOL.
In the standard, if for some word the compilation semantics are equivalent to the interpretation semantics, then this word is declared as immediate. There a number of such words: [defined]
, [undefined]
, [if]
, [else]
, [then]
, (
, .(
, \
.
Also, many other words may be actually implemented as immediate words. Namely, if the glossary entry for a word contains "Interpretation" section, then it is allowed and possible to implement this word as an immediate word (in the standard notion).
such as
IF
or others alike because[
is not STATE-dependant like them
It's incorrect (and slightly ambiguous).
If you imply execution semantics, — they are not specified for these words, and then this claim is incorrect.
In the standard, in one place where the term "STATE-independent behavior" is used (A.6.1.1550 FIND), it means that the compilation semantics for a word are equivalent to the interpretation semantics for the word.
In this sense your claim is incorrect too.
The standard allows
IF
to be STATE-independent. The interpretation semantics forIF
are undefined by the standard, and so this word is allowed to be implemented in such a way that its interpretation semantics are equivalent to its compilation semantics (see A.3.4.3.2).The standard allows
[
to be STATE-dependent, since the interpretation semantics for this word are undefined by the standard.