: C@ @ ;
: C, , ;
+\ Retrieve stack depth
: DEPTH PSP@ PSP0 - ;
+\ Words for whitespace
: '\n' 10 ;
: BL 32 ;
: CR '\n' emit ;
: SPACE BL emit ;
+\ CFA retrieval
: ' BL WORD FIND DROP ;
: ['] IMMEDIATE
LIT LIT , ' , ;
+\ Compilation
+
: [COMPILE] IMMEDIATE ' , ;
: COMPILE IMMEDIATE
LIT LIT , ' , LIT , , ;
['] LIT , ,
;
+\ Convert vocabulary CFA to link addr it contains
+: VOCAB>LATEST
+ 1+ @
+;
+
+\ Compile in recursive call to current word
: RECURSE IMMEDIATE
- LATEST @ \ LATEST points to the word being compiled at the moment
- >CFA \ get the codeword
+ CURRENT @ VOCAB>LATEST
+ LINK> \ get the codeword
, \ compile it
;
-