version 1.18, 1995/11/07 18:06:40
|
version 1.19, 1996/05/13 16:36:55
|
Line 100 DOES> ( -- r )
|
Line 100 DOES> ( -- r )
|
|
|
require debugging.fs |
require debugging.fs |
|
|
: sfnumber ( c-addr u -- r / ) |
: sfnumber ( c-addr u -- r true | false ) |
2dup [CHAR] e scan |
2dup [CHAR] e scan ( c-addr u c-addr2 u2 ) |
dup 0= |
dup 0= |
IF |
IF |
2drop 2dup [CHAR] E scan |
2drop 2dup [CHAR] E scan ( c-addr u c-addr3 u3 ) |
THEN |
THEN |
nip |
nip |
IF |
IF |
2dup >float |
>float |
IF |
ELSE |
2drop state @ |
2drop false |
IF |
THEN ; |
POSTPONE FLiteral |
|
THEN |
:noname ( c-addr u -- ) |
EXIT |
2dup sfnumber |
THEN |
IF |
THEN |
2drop POSTPONE FLiteral |
defers notfound ; |
ELSE |
|
defers compiler-notfound |
|
ENDIF ; |
|
IS compiler-notfound |
|
|
' sfnumber IS notfound |
:noname ( c-addr u -- r ) |
|
2dup sfnumber |
|
IF |
|
2drop |
|
ELSE |
|
defers interpreter-notfound |
|
ENDIF ; |
|
IS interpreter-notfound |
|
|
: fvariable ( -- ) |
: fvariable ( -- ) |
Create 0.0E0 f, ; |
Create 0.0E0 f, ; |