Rul (.rl) Technische Roadmap — Von der v0.4-Engine zur allgemeinen Systemsprache v1.0
Technische Roadmap in vier Meilensteinen zur Erweiterung von Rul (.rl) von einer 29-Opcode-Spalten-Engine (v0.4) zu einer allgemeinen Systemsprache als Ersatz für Rust und Go bei KI-generierter Software (v1.0).
Warum wir mit Daten-Pipelines begonnen haben (v0.1 bis v0.4)
Um zu beweisen, dass das 16-Byte-Binärbefehlsformat auf echtem Silizium funktioniert, bevor wir allgemeine Sprachkonstrukte hinzufügen, haben wir die Phasen v0.1 bis v0.4 auf Array- und Vektor-Pipelines (29 Opcodes) beschränkt — mit dem Nachweis von ~5,78 ns/Knoten O(N)-Verifikation, ~6,4 µs ELF64-Kompilierung und 51,53 GB/s Durchsatz.
Vier Meilensteine zur allgemeinen Systemsprache v1.0
29-Opcode-Spalten-SSA-DAG-Kern, White-Box-Tracer & Linear-Scan AVX2 ELF64 AOT
Bewies das 16-Byte-Binärbefehlsformat, den linearen O(N)-Verifizierer (~5,8 ns/Knoten), die 3-stufige Ausführungs-Engine, den rul-mcp-Server und den LLVM-freien Linux-ELF64-Compiler (~6,4 µs) auf realer Hardware.
- 01. 64-Byte-RulHeader, 16-Byte-ArenaDescriptor, 16-Byte-ProofEntry und 16-Byte-NodeFrame über 29 Opcodes.
- 02. Verlustfreier symbolischer .rls <-> .rl Assembler, eigenständige rul-CLI, rul-bench und 6-Tool-rul-mcp-Server.
- 03. Linear-Scan-YMM-Registerallokator (ymm2..ymm13) mit 51,53 GB/s (4,72x schneller als C) auf 80-MB-Arrays.
Allgemeiner Kontrollfluss, Funktionen & zusammengesetzte Datentypen
Erweiterung des 16-Byte-Befehlssatzes über numerische Arrays hinaus auf Skalare, Structs, Enums, UTF-8-Strings, Hash-Maps, Verzweigungen und terminierungsbewiesene Schleifen.
- 01. Erstklassige Unterstützung für i64, i32, u8, f32, Structs mit festem Layout, algebraische Unions, validierte UTF-8-Strings und Arena-Hash-Maps.
- 02. SelectBranch: bedingte Verzweigung, bei der beide Zweige im identischen Speicherversionszustand zusammenlaufen müssen (geprüft in O(1)).
- 03. RegionLoop & Call: begrenzte Schleifen mit ProofEntry-Terminierungszeugen und modulare Funktionen ohne Ganzprogramm-Inlining.
Heap-Eigentum auf Rust-Niveau & Struct-Lebensdauern in O(N)-Zeit
Verallgemeinerung der 32-Bit-TokenOp-Versionen und 16-Byte-ProofEntry-Zeugen von flachen Arrays auf regionsbasierte Heap-Allokationen und Struct-Feld-Borrows.
- 01. Deterministische Regions-Heap-Allokation und -Freigabe gebunden an lineare Eigentumstokens ohne GC und ohne malloc/free-Fragmentierung.
- 02. ProofEntry-Zeugen für disjunkte Struct-Feld-Mutationen und Zero-Copy-Sub-Slice-Lebensdauern, geprüft in O(1) pro Befehl.
- 03. Voller Schutz gegen Use-after-Free, Double-Free und Aliasing ohne sekundenlanges Borrow-Checker-Constraint-Solving.
Deterministische Nebenläufigkeit im Go-Stil & CapabilityMask-gesteuerte OS-I/O
Einführung leichtgewichtiger Tasks, eigentumsübertragender Kanäle und feingranularer Header-Capability-Bits für Datei-, Netzwerk- und Prozess-Syscalls.
- 01. Das Senden eines Puffers über einen typisierten Kanal führt ein AffineConsume beim Sender durch und überträgt das Eigentum an den Empfänger — verhindert Data Races beim Laden ohne GC.
- 02. Erweiterung der 64-Bit-RulHeader.capability_mask zur Steuerung von Dateisystemzugriffen, Netzwerksockets, Timern und Unterprozessen.
- 03. Ein .rl-Binary mit CAP_NONE (0x0) ist mathematisch vor Ausführungsbeginn daran gehindert, Netzwerk- oder Festplattenaufrufe zu tätigen.
Multi-Architektur-Native-Backends (x86_64, ARM64, WASI) & Formale Korrektheitsbeweise
Erzeugung eigenständiger Binärdateien für Linux, macOS, Windows und WebAssembly ohne LLVM, abgesichert durch Kani-Model-Checking und eine 50-Programme-Konformitätssuite.
- 01. LLVM-freie native Codegenerierung für x86_64 und AArch64 (ARM64) unter Linux, macOS und Windows sowie deterministische WASI-Module.
- 02. Bounded-Model-Checking-Beweise (Kani) und kontinuierliches differentielles Fuzzing über Binärdecoder, O(N)-Verifizierer und Codegen.
- 03. Eingefrorene .rl v1.0-Binärspezifikation und öffentliche 50-Programme-Konformitätstestsuite.
Drei eiserne Ingenieursregeln (Non-Goals)
Jede Sicherheitseigenschaft (Typen, Eigentum, Grenzen, Schleifenterminierung, I/O-Rechte) muss in einem einzigen Vorwärtsdurchlauf O(N) prüfbar sein.
Null GC-Pausen und null versteckte Laufzeit-Threads; die Speicherlebensdauer wird explizit über versionierte Arenen und Regionen verfolgt.
Jede Ausführungsstufe (Tier 0, Tier 1, Tier 2 und ELF64 AOT) muss übereinstimmende Ergebnisse liefern oder mit einem deterministischen Fehler sicher abbrechen.