version 1.74, 2001/01/24 10:32:01
|
version 1.75, 2001/01/24 13:53:32
|
Line 188 struct%
|
Line 188 struct%
|
cell% 2* field prim-c-code |
cell% 2* field prim-c-code |
cell% 2* field prim-forth-code |
cell% 2* field prim-forth-code |
cell% 2* field prim-stack-string |
cell% 2* field prim-stack-string |
|
cell% field prim-items-wordlist \ unique items |
item% max-effect * field prim-effect-in |
item% max-effect * field prim-effect-in |
item% max-effect * field prim-effect-out |
item% max-effect * field prim-effect-out |
cell% field prim-effect-in-end |
cell% field prim-effect-in-end |
Line 227 variable name-line
|
Line 228 variable name-line
|
2variable last-name-filename |
2variable last-name-filename |
Variable function-number 0 function-number ! |
Variable function-number 0 function-number ! |
|
|
\ for several reasons stack items of a word are stored in a wordlist |
|
\ since neither forget nor marker are implemented yet, we make a new |
|
\ wordlist for every word and store it in the variable items |
|
variable itemsqq |
|
|
|
\ a few more set ops |
\ a few more set ops |
|
|
: bit-equivalent ( w1 w2 -- w3 ) |
: bit-equivalent ( w1 w2 -- w3 ) |
Line 283 variable itemsqq
|
Line 279 variable itemsqq
|
r@ item-first @ if |
r@ item-first @ if |
rdrop false exit |
rdrop false exit |
endif |
endif |
r@ item-name 2@ itemsqq @ search-wordlist 0= abort" bug" |
r@ item-name 2@ prim prim-items-wordlist @ search-wordlist 0= abort" bug" |
execute @ |
execute @ |
dup r@ = |
dup r@ = |
if \ item first appeared in output |
if \ item first appeared in output |
Line 370 does> ( item -- )
|
Line 366 does> ( item -- )
|
{ item typ } |
{ item typ } |
typ item item-type ! |
typ item item-type ! |
typ type-stack @ item item-stack !default |
typ type-stack @ item item-stack !default |
item item-name 2@ itemsqq @ search-wordlist 0= if \ new name |
item item-name 2@ prim prim-items-wordlist @ search-wordlist 0= if |
item item-name 2@ nextname item declare |
item item-name 2@ nextname item declare |
item item-first on |
item item-first on |
\ typ type-c-name 2@ type space type ." ;" cr |
\ typ type-c-name 2@ type space type ." ;" cr |
Line 399 does> ( item -- )
|
Line 395 does> ( item -- )
|
['] declaration map-items ; |
['] declaration map-items ; |
|
|
: declarations ( -- ) |
: declarations ( -- ) |
wordlist dup itemsqq ! set-current |
wordlist dup prim prim-items-wordlist ! set-current |
prim prim-effect-in prim prim-effect-in-end @ declaration-list |
prim prim-effect-in prim prim-effect-in-end @ declaration-list |
prim prim-effect-out prim prim-effect-out-end @ declaration-list ; |
prim prim-effect-out prim prim-effect-out-end @ declaration-list ; |
|
|