Proposal: Executing compilation semantics
This proposal has been moved into this section. Its former address was: /standard/doc
This page is dedicated to discussing this specific proposal
ContributeContributions
ruv [94] Executing compilation semanticsProposal2019-07-12 04:16:14
Problem
As for now the following code is standard (it may be part of a standard program):
: E POSTPONE EXIT ;
E
But some Forth systems can throw an exception on the second line since this code tries to append something to the current definition in the absent of current definition. And such Forth systems are not standard for that.
To allow a standard Forth system to throw an exception in such situation, this situation should be an ambiguous condition. And in that case the code above will not be standard.
Proposal
Add into the section 4.1.2 Ambiguous conditions, after the item "interpreting a word with undefined interpretation semantics;" the following item:
appending any semantics to the current definition if there is no current definition;