version 1.2, 1994/05/18 17:30:03
|
version 1.4, 1994/07/13 19:21:09
|
Line 13 INCLUDE look.fs
|
Line 13 INCLUDE look.fs
|
: alias? ( nfa -- flag ) |
: alias? ( nfa -- flag ) |
dup name> look |
dup name> look |
0= ABORT" WINFO: CFA not found" |
0= ABORT" WINFO: CFA not found" |
cell+ |
\ cell+ |
2dup <> |
2dup <> |
IF nip dup 1 cells - here ! |
IF nip dup 1 cells - here ! |
count $1f and here cell+ place true |
count $1f and here cell+ place true |
ELSE 2drop false THEN ; |
ELSE 2drop false THEN ; |
|
|
: var? ( nfa -- flag ) |
: var? ( nfa -- flag ) |
(name>) |
cell+ (name>) |
>code-address ['] leavings >code-address = ; |
>code-address ['] udp >code-address = ; |
|
|
: con? ( nfa -- flag ) |
: con? ( nfa -- flag ) |
(name>) |
cell+ (name>) |
>code-address ['] bl >code-address = ; |
>code-address ['] bl >code-address = ; |
|
|
: does? ( nfa -- flag ) |
: does? ( nfa -- flag ) |
dup (name>) |
cell+ dup (name>) |
>code-address ['] source >code-address = |
>code-address ['] source >code-address = |
dup IF swap (name>) cell+ @ here ! ELSE nip THEN ; |
dup IF swap (name>) cell+ @ here ! ELSE nip THEN ; |
|
|
: defered? ( nfa -- flag ) |
: defered? ( nfa -- flag ) |
dup does? |
dup does? |
IF here @ ['] source cell+ @ = |
IF here @ ['] source cell+ @ = |
dup IF swap (name>) >body @ here ! ELSE nip THEN |
dup IF swap cell+ (name>) >body @ here ! ELSE nip THEN |
ELSE drop false THEN ; |
ELSE drop false THEN ; |
|
|
: colon? ( nfa -- flag ) |
: colon? ( nfa -- flag ) |
(name>) |
cell+ (name>) |
>code-address ['] does? >code-address = ; |
>code-address ['] does? >code-address = ; |
|
|
\ VALUE VCheck |
\ VALUE VCheck |
Line 76 INCLUDE look.fs
|
Line 76 INCLUDE look.fs
|
10 CONSTANT Com# \ Compiler directives : ; POSTPONE |
10 CONSTANT Com# \ Compiler directives : ; POSTPONE |
|
|
CREATE InfoTable |
CREATE InfoTable |
|
' Prim? A, Pri# , |
' Alias? A, Ali# , |
' Alias? A, Ali# , |
' Con? A, Con# , |
' Con? A, Con# , |
' Var? A, Var# , |
' Var? A, Var# , |
Line 83 CREATE InfoTable
|
Line 84 CREATE InfoTable
|
' Defered? A, Def# , |
' Defered? A, Def# , |
' Does? A, Doe# , |
' Does? A, Doe# , |
' Colon? A, Col# , |
' Colon? A, Col# , |
' Prim? A, Pri# , |
|
0 , |
0 , |
|
|
: WordInfo ( nfa --- code ) |
: WordInfo ( nfa --- code ) |