version 1.20, 1996/05/03 13:05:05
|
version 1.21, 1996/05/09 18:12:59
|
Line 505 forth definitions
|
Line 505 forth definitions
|
then ; |
then ; |
|
|
: TO ( c|w|d|r "name" -- ) \ core-ext,local |
: TO ( c|w|d|r "name" -- ) \ core-ext,local |
0 0 0. 0.0e0 { c: clocal w: wlocal d: dlocal f: flocal } |
0 0 0. 0.0e0 { c: clocal w: wlocal d: dlocal f: flocal } |
' dup >definer |
' dup >definer |
state @ |
case |
if |
[ ' locals-wordlist >definer ] literal \ value |
case |
OF >body POSTPONE Aliteral POSTPONE ! ENDOF |
[ ' locals-wordlist >definer ] literal \ value |
[ ' clocal >definer ] literal |
OF >body POSTPONE Aliteral POSTPONE ! ENDOF |
OF POSTPONE laddr# >body @ lp-offset, POSTPONE c! ENDOF |
[ ' clocal >definer ] literal |
[ ' wlocal >definer ] literal |
OF POSTPONE laddr# >body @ lp-offset, POSTPONE c! ENDOF |
OF POSTPONE laddr# >body @ lp-offset, POSTPONE ! ENDOF |
[ ' wlocal >definer ] literal |
[ ' dlocal >definer ] literal |
OF POSTPONE laddr# >body @ lp-offset, POSTPONE ! ENDOF |
OF POSTPONE laddr# >body @ lp-offset, POSTPONE 2! ENDOF |
[ ' dlocal >definer ] literal |
[ ' flocal >definer ] literal |
OF POSTPONE laddr# >body @ lp-offset, POSTPONE 2! ENDOF |
OF POSTPONE laddr# >body @ lp-offset, POSTPONE f! ENDOF |
[ ' flocal >definer ] literal |
-&32 throw |
OF POSTPONE laddr# >body @ lp-offset, POSTPONE f! ENDOF |
endcase ; immediate |
-&32 throw |
interpretation: |
endcase |
' dup >definer [ ' locals-wordlist >definer ] literal = |
else |
if |
[ ' locals-wordlist >definer ] literal = |
>body ! |
if |
else |
>body ! |
-&32 throw |
else |
endif ; |
-&32 throw |
|
endif |
|
endif ; immediate |
|
|
|
: locals| |
: locals| |
\ don't use 'locals|'! use '{'! A portable and free '{' |
\ don't use 'locals|'! use '{'! A portable and free '{' |
\ implementation is anslocals.fs |
\ implementation is compat/anslocals.fs |
BEGIN |
BEGIN |
name 2dup s" |" compare 0<> |
name 2dup s" |" compare 0<> |
WHILE |
WHILE |