bob9123
bob9123

Reputation: 755

Gforth conditional expression with variables - only partly correct

Simple expression:

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

This seems normal and correct, however:

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

The second block of code is wrong. What is evaluating wrongly? What is the problem here?

Upvotes: 1

Views: 74

Answers (1)

Lars Brinkhoff
Lars Brinkhoff

Reputation: 14325

variable x makes a new variable, but x returns the address, not the value.

You need something like this:

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

Upvotes: 3

Related Questions