This document aims to give a brief overview of the structure of the Yhc runtime system. Hopefully with the help of this and the source code it should be possible for people to understand and make changes to the runtime system should they wish to do so.
The runtime system is divided into several parts.
- /Machine The virtual machine architecture
- /Heap The structure of heap nodes
- /BytecodeFormat Format of the YHC bytecode file
- /Bytecodes Instruction bytecodes
- /GC Garbage collection (mark, sweep & compact)
- /Modules Module loading and dynamic linking
- /Primitive Primitive function calls & builtin functions
- /Foreign Foreign function interface system
- /Debug Debugging the runtime system