version 1.7, 1996/05/09 18:13:04
|
version 1.8, 1996/07/16 20:57:14
|
Line 26 Variable countif
|
Line 26 Variable countif
|
: scanIF f83find dup 0= IF drop ['] dummy >name THEN ; |
: scanIF f83find dup 0= IF drop ['] dummy >name THEN ; |
|
|
Create [struct]-search ' scanIF A, ' (reveal) A, ' drop A, |
Create [struct]-search ' scanIF A, ' (reveal) A, ' drop A, |
Create [struct]-voc NIL A, G [struct]-search T A, |
Create [struct]-voc NIL A, [struct]-search A, |
NIL A, NIL A, |
NIL A, NIL A, |
|
|
: ?if countif @ 0< |
: ?if countif @ 0< |
IF [ [struct]-voc 3 cells + ] ALiteral @ lookup ! THEN ; |
IF [ [struct]-voc 3 cells + ] ALiteral @ lookup ! THEN ; |
|
|
UNLOCK Tlast @ NIL Tlast ! LOCK |
UNLOCK Tlast @ NIL Tlast ! LOCK |
|
|
: [IF] 1 countif +! ?if ; immediate |
: [IF] 1 countif +! ?if ; immediate |
: [THEN] -1 countif +! ?if ; immediate |
: [THEN] -1 countif +! ?if ; immediate |
Line 55 UNLOCK Tlast @ NIL Tlast ! LOCK
|
Line 55 UNLOCK Tlast @ NIL Tlast ! LOCK
|
' \ Alias \ immediate |
' \ Alias \ immediate |
|
|
UNLOCK Tlast @ swap Tlast ! LOCK |
UNLOCK Tlast @ swap Tlast ! LOCK |
1 cells - G [struct]-voc T ! |
1 cells - [struct]-voc ! |
|
|
\ Interpretative Structuren 30apr92py |
\ Interpretative Structuren 30apr92py |
|
|
Line 83 User (i)
|
Line 83 User (i)
|
: [LOOP] ( -- ) 1 rdrop rdrop ; immediate |
: [LOOP] ( -- ) 1 rdrop rdrop ; immediate |
: [FOR] ( n -- ) 0 swap postpone [DO] ; immediate |
: [FOR] ( n -- ) 0 swap postpone [DO] ; immediate |
: [NEXT] ( n -- ) -1 rdrop rdrop ; immediate |
: [NEXT] ( n -- ) -1 rdrop rdrop ; immediate |
: [I] ( -- index ) (I) @ postpone Literal ; immediate restrict |
: [I] ( -- index ) (I) @ postpone Literal ; immediate |
: [BEGIN] >in @ >r BEGIN r@ >in ! interpret UNTIL rdrop ; |
: [BEGIN] >in @ >r BEGIN r@ >in ! interpret UNTIL rdrop ; |
immediate |
immediate |
' [+LOOP] Alias [UNTIL] immediate |
' [+LOOP] Alias [UNTIL] immediate |