26 lines
1.2 KiB
Markdown
26 lines
1.2 KiB
Markdown
# Prometeu Runtime — Architecture (Reset Invariants)
|
|
|
|
This document captures the high-level invariants for the reset cycle. It is a stub and will
|
|
evolve as we formalize the new ISA/VM specs. The goal is to define non-negotiable properties
|
|
that guide refactors without forcing legacy compatibility.
|
|
|
|
Core invariants
|
|
---------------
|
|
- Stack-based VM with heap-allocated objects.
|
|
- Garbage Collection happens at safepoints, primarily at `FRAME_SYNC`.
|
|
- Closures are first-class (user functions). Syscalls are callable but not first-class values.
|
|
- Coroutines are the only concurrency model.
|
|
- No backward compatibility: old bytecode formats, shims, or legacy bridges are out of scope.
|
|
|
|
Scope of this stage
|
|
-------------------
|
|
- Establish tooling baselines (fmt, clippy, CI) and minimal smoke tests.
|
|
- Avoid encoding legacy ISA semantics in tests; keep tests focused on build confidence.
|
|
- Production code must remain free from test-only hooks; use dev-only utilities for determinism.
|
|
|
|
Out of scope (for now)
|
|
----------------------
|
|
- Detailed ISA definition and instruction semantics beyond what is needed to compile and run
|
|
smoke-level validations.
|
|
- Performance tuning or GC algorithm selection.
|