JennyBrien| forth-standard.org
Annex A: Rationale| forth-standard.org
> I don't really see how the implementation I propose is insufficient for your system, unless 0<> does not return either 0 or -1. I see that TRUE is declared to return "a single-cell value with all bits set", so maybe that doesn't translate to -1 in your system? | Forth Standard
The standard clearly specifies in 3.4.1 that the parsing of `."` ends when the parse area (line or block) ends. So if that definition is on the command line or in a file, it is equivalent to | Forth Standard
The webpage for 11.6.1.2165 inlines this Rationale quote from A.11.6.1.2165 S": | Forth Standard
It would help if I didn't typo `..` where `.` was intended.| Forth Standard
> So, my request for clarification includes figuring out whether this code should become well-defined or remain ambiguous: | Forth Standard
```forth | Forth Standard
> The standard allows the implementations where IMMEDIATE affects the last definition in the compilation word list. It is the only reason for the following ambiguous condition (from 16.3.3): | Forth Standard
I would change the stack diagram for `of` to `( C: case-sys1 -- case-sys2 of-sys )` — this stack diagram will formally allow the system to throw an exception if _case-sys1_ is absent on the top of the control-flow stack, and it will require a program to restore _case-sys1_ if it is temporary removed (and the data stack is used for the control-flow stack items). | Forth Standard
RDROP is not part of the standard; your reference implementation should spell it out as R> DROP.| Forth Standard
I can see that tests for 2>R were not added until version 0.10 of the testsuite (Aug 2014), which post-dates Forth-2012 and thus explains why those tests are not visible in Annex F. Had I seen that test sooner, I would have caught the bug in my initial attempted implementation. Namely: | Forth Standard
The standard already includes a reference implementation for CASE OF ENDOF ENDCASE, but it it tucked away in annex A Rationale instead of the more traditional annex E used by most other reference implementations; hence it does not show up when browsing to this page online. So maybe that makes this more of a web page request than yet another reference implementation - but to make life easier for the next reader: | Forth Standard
When `read-line` is called with u1=0 at the end of the file, flag=true according to | Forth Standard
It is possible to test AGAIN without an infinite loop if combined with the tools set AHEAD and CS-ROLL, as in: | Forth Standard
6.1.1700 IF CORE| forth-standard.org
> which at strict reading would state that a comment cannot contain ")" | Forth Standard
ContributeContributions| forth-standard.org
It's a known problem.| forth-standard.org
I also found this irritating. And at first I completely eliminated block 0 (by using an offset), but later found that having a block 0 that cannot be used for load is the traditional way, so I changed Gforth to follow that way. Blocks are a traditional thing. If using Block 0 for something else was good enough in the times of floppy disks, it should be good enough now. In any case, it seems to me that you have understood the issue, and have no need for clarification, so I am closing this ...| forth-standard.org
It is obvious that the idea behind the stack diagram of `throw` is to specify what happens on the data stack in both cases, including the case where the control flow does not continue sequentially. And I think it's a good idea to specify the stack effect for that case, and it should also be done for `?do`. | Forth Standard
I was never good at following directions. | Forth Standard
In the latest draft, there is really no difference between core `FIND` and search-order `FIND`, because the difference has been factored out into Sections 3.4.2 and 16.3.3, as well as into 2.1 and 16.2. | Forth Standard
MSB is not -1. It's the same as MIN-INT.| Forth Standard
In your example there are 4 items on the stack. You have to count the `2`, too.| Forth Standard
When PARSE-NAME was chosen (2005) the definitions from the first group (2012) was not proposed yet. So this inconsistency did not exist in those time (and I did not have any objection for PARSE-NAME name too). It has appeared far later.| forth-standard.org
I prefer NieDzejkob's solution. Using a core-ext word, 0<>, in a core word seems to defeat the point of core-ext's optional nature.| Forth Standard
ContributeContributions| forth-standard.org
ruv| forth-standard.org
ruv| forth-standard.org
Is this, effectively:| forth-standard.org
6.2.0200 .( dot-paren CORE EXT| forth-standard.org
ruv| forth-standard.org
Is the following fragment standard compliant?| forth-standard.org
BerndPaysan| forth-standard.org
x86 use the least significant n bits, except the original 8086 and 8088 when the shift count is in the CL register, in which case all 8 bits would be used (this was how the 80186 was distinguished from the 8086). The use of just n bits is common enough among modern archs, but 32-bit ARM (e.g. in ARM Cortex M0+ or M4 microcontrollers) is an exception, since it uses the low eight bits of the operand (but still ignores the higher bits). Enforcing a result of zero when the count is higher than th...| forth-standard.org
ruv| forth-standard.org
AntonErtl| forth-standard.org
> are colon-definitions supposed to be compiled in data space (addressable by `@`, `!` etc)? | Forth Standard
ruv| forth-standard.org
AntonErtl| forth-standard.org
So, the only advantage of a transient result is that **it allows to save memory** in some cases. And it only makes sense when saving 10-100 KiB of memory (say, 8% of compiled code size) matters. | Forth Standard
> how it is implemented, specially where the definition list of the word created using `:NONAME` is compiled. | Forth Standard
This web-page shows the contents of the sections 6.1.2214 and F.6.1.2214 in [Forth-2012 (pdf)](http://www.forth200x.org/documents/forth-2012.pdf) (see also [Intro](https://forth-standard.org/standard/intro)). If this content is changed, it will no longer reflect Forth-2012. I think that only a web-page with erratum (or a special comment in each web-page) can be added to Forth-2012 and here. | Forth Standard
3 Usage requirements| forth-standard.org
GeraldWodni| forth-standard.org
mcondron| forth-standard.org