Digest #198 2022-09-07
Contributions
It should be:
T{ SOURCE-ID DUP -1 = SWAP 0= OR -> <TRUE> }T
In the "Testing" NeverExecuted obviously is executed and that's the end of it!
Replies
because there is no exception stack in CORE.
Actually no, since the behavior of QUIT
could be updated in the Exception word set. It looks like just an omission.
Concerning the throw code
-56
that you mention on github, I don't think it has anything to do with the Forth wordQUIT
. My guess is that it's for the Unix signal SIGQUIT
Then it should be named "SIGQUIT". It would be confused to call it "QUIT" when you have a word having name "QUIT".
Then some hint to POSIX signals should be given.
Then throw codes should be assigned to other signals too.
So SIGQUIT version doesn't look quite convinced to me.
Problem solved. core.fr is supposed to be run in HEX. I was running the >NUMBER test cases interactively after doubletest.fth had switched BASE to DECIMAL.
proposal - Exclude zero from the data types that are identifiers
According to FILE SOURCE-ID
, fileid cannot be -1
too.
So relationship for fileid should be:
fileid => x \ {0,-1}
proposal - Exclude zero from the data types that are identifiers
Probably it makes sense to use simpler wording as:
Extend "3.1.1 Data-type relationships" by the following
instead of
Add the following to the end of the list of subtype relationships in the section 3.1.1 Data-type relationships
proposal - Exclude zero from the data types that are identifiers
Should the notation
{0}
be also described?
Actually, this notation is already described in 2.2.1 Numeric notation. Probably it should be extended to the case of explicit items enumeration as { number [, number ]* }, e.g. {0}, {-1,0,1}.