带变量的 Gforth 条件表达式 - 仅部分正确

Gforth conditional expression with variables - only partly correct

简单表达:

variable x  ok
4 x !  ok
3 x < . -1  ok
3 x > . 0  ok

这似乎是正常且正确的,但是:

variable x  ok
3 x !  ok
x 4 < . 0  ok
x 4 > . -1  ok

第二段代码错误。什么是评估错误?这里有什么问题?

variable x 创建一个新变量,但 x returns 地址,而不是值。

你需要这样的东西:

variable x
3 x !  ok
x @ 4 < .
x @ 4 > .