Rul (.rl) Technische Roadmap — Van v0.4 Engine naar v1.0 Algemene Systeemtaal
Engineering-roadmap in vier mijlpalen die Rul (.rl) uitbreidt van een kolomgeoriënteerde compute-engine met 29 opcodes (v0.4) naar een algemene systeemtaal die Rust en Go vervangt voor door AI gegenereerde software (v1.0).
Waarom We Begonnen met Data-Pipelines (v0.1 tot v0.4)
Om te bewijzen dat het 16-byte binaire instructieformaat werkt op echt silicium voordat we algemene taalconstructies toevoegen, hebben we fasen v0.1 tot en met v0.4 beperkt tot array- en vectorverwerkingspipelines (29 opcodes) — waarmee ~5.78 ns/node O(N) verificatie, ~6.4 µs zelfstandige ELF64-compilatie en 51.53 GB/s doorvoer zijn bewezen.
Vier Mijlpalen naar de v1.0 Algemene Systeemtaal
29-Opcode Kolom SSA-DAG Kern, White-Box Tracer & Lineaire AVX2 ELF64 AOT
Bewees het 16-byte binaire instructieformaat, de single-pass O(N) verifier (~5.8 ns/node), de 3-laags uitvoeringsengine, de rul-mcp server en de LLVM-vrije native Linux ELF64-compiler (~6.4 µs) op echte hardware.
- 01. 64-byte RulHeader, 16-byte ArenaDescriptor, 16-byte ProofEntry en 16-byte NodeFrame over 29 opcodes.
- 02. Verliesvrije .rls <-> .rl symbolische assembler, zelfstandige rul CLI, rul-bench en 6-tool rul-mcp server.
- 03. Lineaire YMM-registerallocator (ymm2..ymm13) die 51.53 GB/s (4.72x sneller dan C) behaalt op arrays van 80 MB.
Algemene Control Flow, Functies & Samengestelde Datatypen
Breid de 16-byte instructieset uit voorbij numerieke arrays ter ondersteuning van algemene scalairen, structs, enums, UTF-8 strings, hash maps, voorwaardelijke vertakkingen en lussen met bewezen beëindiging.
- 01. Eersteklas ondersteuning voor i64, i32, u8, f32, structs met vaste layout, algebraïsche gelabelde unions, gevalideerde UTF-8 strings en arena hash maps.
- 02. SelectBranch: voorwaardelijke vertakking waarbij beide takken moeten samenkomen op een identieke geheugenversiestatus (gecontroleerd in O(1)).
- 03. RegionLoop & Call: begrensde lussen met ProofEntry beëindigingscertificaten en modulaire functies die worden geverifieerd zonder het hele programma te inlinen.
Rust-Niveau Heap-Eigendom & Struct-Lifetimes in O(N) Tijd
Verbind 32-bit TokenOp-versies en 16-byte ProofEntry-certificaten van platte arrays naar regiogebaseerde heap-allocaties en struct-veldlezingen.
- 01. Deterministische regio-heap-allocatie en -deallocatie gekoppeld aan lineaire eigendomstokens zonder GC en zonder malloc/free-fragmentatie.
- 02. Ondersteunende ProofEntry-certificaten voor disjuncte struct-veldmutaties en zero-copy sub-slice lifetimes gecontroleerd in O(1) per instructie.
- 03. Volledige bescherming tegen use-after-free, double-free en aliasing zonder secondenlange borrow-checker constraint solving.
Go-Stijl Deterministische Concurrency & Capability-Gecontroleerde OS I/O
Introduceer lichtgewicht taken, eigendomsoverdragende kanalen en fijnmazige capability-bits in de header die bestands-, netwerk- en processyscalls beheren.
- 01. Het verzenden van een buffer over een getypeerd kanaal voert een AffineConsume uit op het verzendertoken en draagt het eigendom over aan de ontvanger — wat dataraces bij het laden voorkomt zonder GC.
- 02. Breid het 64-bit RulHeader.capability_mask uit om bestandssysteem-lees/schrijfacties, netwerksockets, timers en subprocessen te beveiligen.
- 03. Een .rl-binary met CAP_NONE (0x0) wordt wiskundig geblokkeerd om enige netwerk- of schijfaanroep te doen voordat de uitvoering begint.
Multi-Architectuur Native Backends (x86_64, ARM64, WASI) & Formele Correctheidsbewijzen
Genereer zelfstandige executables voor Linux, macOS, Windows en WebAssembly zonder LLVM, ondersteund door Kani model checking en een v1.0 conformiteitssuite van 50 programma's.
- 01. LLVM-vrije native codegeneratie voor x86_64 en AArch64 (ARM64) op Linux, macOS en Windows, plus deterministische WASI-modules.
- 02. Bounded model-checking bewijzen (Kani) en continue differentiële fuzzing over de binaire decoder, O(N) verifier en native codegen.
- 03. Bevroren .rl v1.0 binaire specificatie en openbare conformiteitstestsuite van 50 programma's.
Kernregels voor Engineering (Niet-Doelen)
Elke veiligheidseigenschap (typen, eigendom, grenzen, lusbeëindiging, I/O-capabilities) moet verifieerbaar zijn in één enkele voorwaartse doorgang O(N).
Nul GC-pauzes en nul verborgen runtime-threads; de levensduur van het geheugen wordt expliciet bijgehouden via geversioneerde arena's en regio's.
Elke uitvoeringslaag (Tier 0, Tier 1, Tier 2 en ELF64 AOT) moet overeenkomende resultaten opleveren of veilig falen met een deterministische fout.