1 \ Vocabulary management
3 \ Forget word and everything defined after it in compilation dict
5 BL WORD CURRENT @ FINDVOCAB ( find the word, gets the dictionary entry address )
13 DUP @ LATEST ! ( set LATEST to point to the previous word )
17 BL WORD FIND DROP >NAME
18 DUP @ F_HIDDEN OR SWAP !
21 \ Create new vocabulary
25 body> context #context @ 1- + !
29 context #context @ 1- + @ current !
32 \ Define root vocabulary (always available)
47 context #context @ + dup 1- @ swap !
55 \ Display search order and compilation dictionary
59 context #context @ 1- + context swap
64 \ Current (definitions)
69 \ Display transient vocabulary contents
72 context #context @ 1- + @
75 ?DUP ( while link pointer is not 0 )
77 DUP ?HIDDEN NOT IF ( ignore hidden words )
78 DUP 1+ .NAME ( but if not hidden, print the word )
81 @ ( dereference the link pointer - go to previous word )
86 only forth also definitions