Forth virtual machine
Often, Forth implementations have a simple virtual machine at heart, consisting of three primitives. Those are:
- nest, also called docol
- unnest, or semi_s (;s)
- next
three registers are used to implement the virtual machine, another one exists for passing data between words, which use the vm. These are:
different models exist to implement the forth vm, the one given here implements indirect threaded code, or ITC
next: (ip)+ -> w ; jmp (w)+
nest: ip -> -(rp) ; w -> ip ; next
unnest: (rp)+ -> ip ; next
other models are:
- DTC (Direct Threaded Code)
- STC (Subroutine Threaded Code)
- TTC (Token Threaded Code)
less often used are
- return threading
- string threading
- call threading
Referenced By
Virtual machine
|