FORTH
    | 
The VLIST command had been present in FIG and other forth
 implementations. It has to list all accessible words. In PFE
 it list all words in the search order. Well, the point is,
 that we do really just look into the search order and are
 then calling
 WORDSon that Wordl. That way you can seeall accessible words in the order they might be found.
 Uses
 ?CR | 
  tools_misc   ordinary primitive 
    
    FORTH CSP no special info, see general notes 
  tools_misc   threadstate variable 
    | 
put
 SPintoCSP
 used in control-words
 | 
  tools_misc   ordinary primitive 
    | 
check that
 SP==CSPotherwiseTHROW
 used in control-words
 | 
  tools_misc   ordinary primitive 
    FORTH CS-SWAP no special info, see general notes 
  tools_misc   ordinary primitive 
    FORTH CS-DROP no special info, see general notes 
  tools_misc   ordinary primitive 
    
    | 
check that the current
 STATEis compilingotherwise
 THROW
 often used in control-words
 | 
  tools_misc   ordinary primitive 
    | 
check that the current
 STATEis executingotherwise
 THROW
 often used in control-words
 | 
  tools_misc   ordinary primitive 
    | 
check the file-id otherwise (fixme)
 | 
  tools_misc   ordinary primitive 
    | 
check that the currently interpreted text is
 from a file/block, otherwise
 THROW | 
  tools_misc   ordinary primitive 
    | 
if compiling, check that the two magics on
 the
 CS-STACKare identical, otherwise throw
 used in control-words
 | 
  tools_misc   ordinary primitive 
    | 
check all stacks for underflow and overflow conditions,
 and if such an error condition is detected
 THROW | 
  tools_misc   ordinary primitive 
    
    | 
Immediate FALSE. Used to comment out sections of code.
 IMMEDIATE so it can be inside definitions.
 | 
  tools_misc   immediate constant 
    | 
Search the dictionary for _name_. If _name_ is found,
 return TRUE; otherwise return FALSE. Immediate for use in
 definitions.
   
This word will actually return what FINDreturns (the NFA).does check for the word using find (so it does not throw like
 ')and puts it on stack. As it is immediate it does work in compile-mode
 too, so it places its argument in the cs-stack then. This is most
 useful with a directly following
 [IF]clause, so that sth. likean
 [IFDEF] wordcan be simulated through[DEFINED] word [IF]
 : DEFINED BL WORD COUNT (FIND-NFA) ; 
 | 
  tools_misc   ordinary primitive 
    | 
Search the dictionary for _name_. If _name_ is found,
 return TRUE; otherwise return FALSE. Immediate for use in
 definitions.
   
[DEFINED] word       ( -- nfa|0 ) immediate does check for the word using find (so it does not throw like
 ')and puts it on stack. As it is immediate it does work in compile-mode
 too, so it places its argument in the cs-stack then. This is most
 useful with a directly following
 [IF]clause, so that sth. likean
 [IFDEF] wordcan be simulated through[DEFINED] word [IF]
 : [DEFINED] BL WORD FIND NIP ; IMMEDIATE
 | 
  tools_misc   immediate primitive 
    | 
Search the dictionary for _name_. If _name_ is found,
 return FALSE; otherwise return TRUE. Immediate for use in
 definitions.
 
 see
 [DEFINED] | 
  tools_misc   immediate primitive 
    EXTENSIONS
    
    | 
forget everything above addr
 - used by
 FORGET | 
  tools_misc   ordinary primitive 
    | 
a forth system variable -
 (FORGET)will not work belowthis address and any
 FORGETon a header below this markwill
 THROW
 | 
  tools_misc   threadstate variable 
       
    | 
the lower end of usable area - the forth memory block minus the
 forth-related DICTALLOCS at the upper end (e.g.
 POCKET-PAD)Note that this is a variable by tradition but you should not move it.
 | 
  tools_misc   threadstate variable 
   
    | 
the lower end of usable area - the forth memory block minus the
 forth-VM backstore. Note that this is a variable by tradition but
 you should not move it.
 | 
  tools_misc   threadstate variable 
        
    | 
the upper limit of the forth writeable memory space,
 the variable
 DICTLIMITmust be below this line.stack-space and other space-areas are often allocated
 above
 DICTLIMITupto this constant.
 
 DICTFENCEis the lower end of the writeable dictionary | 
  tools_misc   ordinary primitive 
 
    | 
the lower limit of the forth writeable memory space,
 the variable
 DICTFENCEmust be above this line.Some code-areas are often moved in between
 DICTFENCEandthis constant. To guard normal Forth code from deletion
 the usual practice goes with the
 FENCEvariable
 
 DICTLIMITis the upper end of the writeable dictionary | 
  tools_misc   ordinary primitive 
 
    
    EXTENSIONS EXCEPTION_MAGIC no special info, see general notes 
  tools_misc   ordinary constant 
    EXTENSIONS INPUT_MAGIC no special info, see general notes 
  tools_misc   ordinary constant 
    EXTENSIONS DEST_MAGIC no special info, see general notes 
  tools_misc   ordinary constant 
    EXTENSIONS ORIG_MAGIC no special info, see general notes 
  tools_misc   ordinary constant 
    EXTENSIONS LOOP_MAGIC no special info, see general notes 
  tools_misc   ordinary constant 
    EXTENSIONS CASE_MAGIC no special info, see general notes 
  tools_misc   ordinary constant 
    EXTENSIONS OF_MAGIC no special info, see general notes 
  tools_misc   ordinary constant