Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!newsfeed.fsmpi.rwth-aachen.de!rt.uk.eu.org!aioe.org!.POSTED!not-for-mail From: "Rod Pemberton" Newsgroups: comp.lang.forth Subject: Re: BEGIN with multiple AGAINs? Date: Sat, 14 Jun 2014 00:32:07 -0400 Organization: Aioe.org NNTP Server Lines: 30 Message-ID: References: <59197a5d-9e3b-47b1-bf85-d883081c21e0@googlegroups.com> NNTP-Posting-Host: CNsg4fVcCsvs3UaOgZtQCw.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Opera Mail/12.16 (Linux) X-Notice: Filtered by postfilter v. 0.8.2 Xref: csiph.com comp.lang.forth:31508 On Fri, 13 Jun 2014 12:14:13 -0400, BruceMcF wrote: > You'll note that that the state machine structure is terminated with the > xt for FALSE, so its null-return terminated rather than null terminated. > What if an EXECUTEd XT doesn't return a status flag? I'd expect to be able to use DUP or SWAP or other words without having to redefine them to return a status flag. Isn't it a presumption on your part that a user won't use words not defined to return a status flag? I.e., wouldn't the safe design be to *NOT* check for a condition after EXECUTE, but *TO* check for the end-of-list prior to EXECUTE ? > If you'd been paying closer attention, [...] True, I did misread that. I had your drinking states reversed. > [...] you'd also have caught that I was saying I was NOT drunk, [...] No, you still said you were drinking, perhaps not drunk. Maybe, you need to reread it too. What you actually said was this: BF> [ not drinking - incorrect ] BF> BF> Sadly I wasn't drinking when I wrote that ... BF> BF> [ drinking now - corrected ] Rod Pemberton