adea75e50a
I'm pretty happy about how lightweight the implementation turns out to be.
14 lines
456 B
Plaintext
14 lines
456 B
Plaintext
( We don't use ." and ABORT in core, they're not xcomp-ed )
|
|
: ." [COMPILE] LIT" COMPILE (print) ; IMMEDIATE
|
|
: ABORT" [COMPILE] ." COMPILE ABORT ; IMMEDIATE
|
|
: BEGIN H@ ; IMMEDIATE
|
|
: AGAIN COMPILE (br) H@ - _bchk C, ; IMMEDIATE
|
|
: UNTIL COMPILE (?br) H@ - _bchk C, ; IMMEDIATE
|
|
: [ INTERPRET ; IMMEDIATE
|
|
: ] R> DROP ;
|
|
: COMPILE ' LITN ['] , , ; IMMEDIATE
|
|
: [COMPILE] ' , ; IMMEDIATE
|
|
: ['] ' LITN ; IMMEDIATE
|
|
':' X' _ 4 - C! ( give : its name )
|
|
'(' X' _ 4 - C!
|