version 1.8, 1999/02/03 00:10:26
|
version 1.9, 1999/03/23 20:24:27
|
Line 37 UNLOCK Tlast @ TNIL Tlast ! LOCK
|
Line 37 UNLOCK Tlast @ TNIL Tlast ! LOCK
|
: [IF] |
: [IF] |
1 countif +! ?if ; immediate |
1 countif +! ?if ; immediate |
: [THEN] |
: [THEN] |
\G Do nothing. |
|
-1 countif +! ?if ; immediate |
-1 countif +! ?if ; immediate |
: [ELSE] |
: [ELSE] |
postpone [THEN] postpone [IF] ; |
postpone [THEN] postpone [IF] ; |
Line 82 UNLOCK Tlast @ swap Tlast ! LOCK
|
Line 81 UNLOCK Tlast @ swap Tlast ! LOCK
|
|
|
: [IFDEF] ( "<spaces>name" -- ) \ gforth bracket-if-def |
: [IFDEF] ( "<spaces>name" -- ) \ gforth bracket-if-def |
\G If name is found in the current search-order, behave like |
\G If name is found in the current search-order, behave like |
\G @code{[IF]} with a @code{TRUE} flag, othewise behave like |
\G @code{[IF]} with a @code{TRUE} flag, otherwise behave like |
\G @code{[IF]} with a @code{FALSE} flag. Immediate word. |
\G @code{[IF]} with a @code{FALSE} flag. Immediate word. |
postpone defined postpone [IF] ; immediate |
postpone defined postpone [IF] ; immediate |
|
|
: [IFUNDEF] ( "<spaces>name" -- ) \ gforth bracket-if-un-def |
: [IFUNDEF] ( "<spaces>name" -- ) \ gforth bracket-if-un-def |
\G If name is not found in the current search-order, behave like |
\G If name is not found in the current search-order, behave like |
\G @code{[IF]} with a @code{TRUE} flag, othewise behave like |
\G @code{[IF]} with a @code{TRUE} flag, otherwise behave like |
\G @code{[IF]} with a @code{FALSE} flag. Immediate word. |
\G @code{[IF]} with a @code{FALSE} flag. Immediate word. |
postpone defined 0= postpone [IF] ; immediate |
postpone defined 0= postpone [IF] ; immediate |
|
|
Line 107 UNLOCK Tlast @ swap Tlast ! LOCK
|
Line 106 UNLOCK Tlast @ swap Tlast ! LOCK
|
|
|
: [THEN] ( -- ) \ tools-ext bracket-then |
: [THEN] ( -- ) \ tools-ext bracket-then |
\G Do nothing; used as a marker for other words to parse |
\G Do nothing; used as a marker for other words to parse |
\G and discard up to. @code{[THEN]} is an immediate word. |
\G and discard up to. Immediate word. |
; immediate |
; immediate |
|
|
: [ENDIF] ( -- ) \ gforth bracket-end-if |
: [ENDIF] ( -- ) \ gforth bracket-end-if |
\G Do nothing; synonym for [THEN] |
\G Do nothing; synonym for @code{[THEN]} |
; immediate |
; immediate |
|
|
\ Structs for interpreter 28nov92py |
\ Structs for interpreter 28nov92py |