# Overview - [arm](arm) - ARM64 implementation (w.i.p.) - [asm](asm) - Pseudo-assembler stage - [asmc](asmc) - Compiles assembler to actual machine code - [ast](ast) - Abstract syntax tree generation with the `Parse` function - [build](build) - Build command - [cli](cli) - Command line interface - [compiler](compiler) - Compiler frontend used by `build` - [config](config) - Globals for the entire project - [core](core) - Definition of `Function` and how to compile it (uses `register.Machine`) - [cpu](cpu) - Types to simulate a generic CPU during compilation - [data](data) - Data container that can re-use existing data (e.g. the `Hello` in `Hello World`) - [dll](dll) - DLL support for Windows systems (w.i.p.) - [elf](elf) - ELF format for Linux executables - [errors](errors) - Error types - [expression](expression) - Expression parser generating trees with the `Parse` function - [fs](fs) - File system access - [macho](macho) - MachO format for Mac executables - [pe](pe) - PE format for Windows executables - [register](register) - Defines `Machine` type combining an assembler with CPU states - [riscv](riscv) - RISCV implementation (w.i.p.) - [scanner](scanner) - Scanner frontend used by `build` - [scope](scope) - Defines a `Scope` used for code blocks - [sizeof](sizeof) - Calculates the byte size of numbers - [token](token) - Converts a file to tokens with the `Tokenize` function - [types](types) - Type system - [x86](x86) - x86-64 implementation