oris
Oris
A high-performance heap allocator, after the folk-allotters of fate.
A Rust and Zig port of Dimitar Lazarov’s HPHA (2007).
Working draft — v0.4. Design stage — stubs, coding conventions, and CI scaffolding are in place; the allocator core lands in v0.1.0.
Status
Oris is at its design-and-scaffolding stage — the design documents are settled and per-port build/CI scaffolding is in place, ahead of the v0.1.0 allocator implementation. The two foundational documents are:
- BRIEF.md — design rationale, etymological grounding, target workloads, prior-art positioning
- ROADMAP.md — milestones, versioning policy, the cross-language invariant
Structure
- Cpp/ — the canonical HPHA reference source from 2007, included for diff and reference purposes. See Cpp/NOTICE.md for the license trail.
- Rust/ — the
orisnikcrate (targets Rust 1.85 / edition 2024). Name reserved on crates.io at0.0.0; allocator core forthcoming in v0.1.0. - Zig/ — the
orisnitsamodule (targets Zig 0.16.0). Stub package and manifest in place; allocator core forthcoming in v0.1.0. - .github/workflows/ — CI for both ports (3-OS matrix; Rust adds a Miri soundness lane) plus tag-driven publishing: crates.io via Trusted Publishing, and a re-rooted Zig release asset.
Coding conventions
Both ports follow the Amphigraphic Grit
discipline, extended for a high-performance heap allocator (Grit-ORIS):
- Rust/CONVENTIONS.md —
orisnik - Zig/CONVENTIONS.md —
orisnitsa
The two share the cross-port-invariant discipline (see ROADMAP.md): an identical
public alloc/free sequence must produce identical internal state transitions across both ports.
The CLAUDE.md files (repo root and one per port) wire these conventions into AI-assisted edits.
License
Dual-licensed under MIT OR Apache-2.0, at your option — see LICENSE.
The HPHA reference source under Cpp/ retains its original 2007 copyright header verbatim and is included under the same dual license, consistent with the public license trail established by the Open 3D Engine project. See Cpp/NOTICE.md for full provenance.