# Runtime --- # Requirements * Linux X64 with io_uring (6+) * GNU Make * GCC with -std=gnu99 -fhardened (14+) # Sections * ##### [Interface](./interface.md) * ##### [Thread](./thread.md) * ##### [Mutex](./mutex.md) * ##### [Memory](./memory.md) * ##### [Io](./io.md) * ##### [Shared](./shared.md) * ##### [Identifier](./identifier.md) * ##### [Type](./type.md) * ##### [Group](./group.md) * ##### [Buffer](./buffer.md) * ##### [Map](./map.md) * ##### [Queue](./queue.md) * ##### [Union](./union.md) * ##### [Native](./native.md) * ##### [Namespace](./namespace.md) * ##### [Error](./error.md) * ##### [Testing](./testing.md) # Invocation ## Startup 1. Configuration 2. Initialize tasks 3. Initialize types 4. Initialize allocators 5. Initialize IO ## Main ### Module ### String/REPL ## Life cycle 1. ##### [Register](../lifecycle/register.md) 2. ##### [Parse](../lifecycle/parse.md) 3. ##### Scope 4. ##### Import 5. ##### Check 6. ##### Eval 7. ##### Ir 8. ##### Jit 9. ##### Exec 10. ##### Notify ## Shutdown 1. Clean up IO 2. Clean up allocators 3. Clean up types 4. Clean up tasks