| [THEN] |
[THEN] |
| |
|
| has? new-input 0= [IF] |
has? new-input 0= [IF] |
| |
: input-start-line ( -- ) >in off ; |
| |
: start-lexeme ( addr -- ) drop ; |
| : refill ( -- flag ) \ core-ext,block-ext,file-ext |
: refill ( -- flag ) \ core-ext,block-ext,file-ext |
| \G Attempt to fill the input buffer from the input source. When |
\G Attempt to fill the input buffer from the input source. When |
| \G the input source is the user input device, attempt to receive |
\G the input source is the user input device, attempt to receive |
| |
|
| \ \ DOERROR (DOERROR) 13jun93jaw |
\ \ DOERROR (DOERROR) 13jun93jaw |
| |
|
| |
has? ec 0= [IF] |
| 8 Constant max-errors |
8 Constant max-errors |
| 5 has? file 2 and + Constant /error |
5 has? file 2 and + Constant /error |
| Variable error-stack 0 error-stack ! |
Variable error-stack 0 error-stack ! |
| |
|
| ' (DoError) IS DoError |
' (DoError) IS DoError |
| |
|
| |
[ELSE] |
| |
: dec. base @ >r decimal . r> base ! ; |
| |
: DoError ( throw-code -- ) ." Error# " dec. cr ; |
| |
[THEN] |
| |
|
| : quit ( ?? -- ?? ) \ core |
: quit ( ?? -- ?? ) \ core |
| \G Empty the return stack, make the user input device |
\G Empty the return stack, make the user input device |
| \G the input source, enter interpret state and start |
\G the input source, enter interpret state and start |