Liste des Groupes | Revenir à cl forth |
On 6/05/2025 3:29 am, Ruvim wrote:You suggest to make -56 a special case in `throw`. But what is the rationale for this?On 2025-05-05 08:11, dxf wrote:Except THROW special-cased codes -1 and -2 effectively reserving their behaviour....>
However modifying it to do so gives these results:
>
1 .( a ) cr -56 throw .( b )
>
'a' is displayed and the stack is: 1
This violates the behavior of `throw` specified in 9.6.1.2275,
because if there is no a user's exception frame, the data stack must be emptied.
>
The table 9.1 in Forth-2012 (or 9.2 in Forth-94) does not affect the behavior of `throw` at all.
One can speculate why ANS didn't do so for -56 but to my mind QUIT when implemented
should function as expected i.e. -56 THROW uncaught should perform QUIT.
Les messages affichés proviennent d'usenet.