Rul (.rl) Whitepaper & Empirische Evaluatie — Zenodo DOI 10.5281/zenodo.23722094
Technische whitepaper, architecturale first-principles analyse, 80 MB kolomgeoriënteerde benchmarkmethodologie en cryptografische SHA-256 Prior Art-verificatie voor Rul (.rl).
Rul (.rl): Een 128-Bit Schedule- en Bewijsdragende Binaire SSA-DAG Programmeertaal
Traditionele programmeertalen (C, Go, Rust, Python) zijn ontworpen rond menselijke biologische beperkingen: toetsenbordinvoer met lage bandbreedte (~40 bits/s) en visueel lezen van ASCII-broncode, wat een enorme belasting aan serialisatie, parsing, type-inferentie en LLVM-optimalisatie oplegt aan autonome AI-Agenten.
Rul (.rl) elimineert tekstuele broncode als primaire representatie en vervangt deze door een in het geheugen gemapte platte binaire topologische SSA-DAG waarin elke instructie een vast 128-bit (16-byte) NodeFrame is dat Algoritme + ScheduleHint + ProofIdx + AffineToken/ReadLease codeert. Omdat de AI-Agent expliciete schedulinghints en veiligheidscertificaten samen met het algoritme genereert, voert de Rul-compiler nul type-inferentie en nul zoekopdrachten uit: een single-pass O(N) lineaire verifier garandeert wiskundig 100% afwezigheid van geheugen-aliasing, use-after-consume, buffer overflows en sandbox-capabilityschendingen in ~5.78 ns/node, terwijl de 3-laags uitvoeringsengine en directe x86_64 ELF64 AOT-compiler meerfasige kolom-pipelines fuseren tot single-pass registerlussen in ~6.4 µs.
Waarom Menselijke Teksttalen een Knelpunt Zijn voor AI-Agenten
- • AI serialiseert interne tensor-intentie naar duizenden ASCII-tekens (pub fn, accolades, puntkomma's).
- • Compiler besteedt seconden aan het lexen van tekst, het bouwen van AST's en het uitvoeren van NP-moeilijke borrow-checker / register-allocatie zoekopdrachten.
- • Hardware-scheduling (SIMD / cache-tiling / threading) zit verstrikt in imperatieve lussyntax.
- • AI genereert rechtstreeks binaire frames van 16 bytes (0 ms parsing, 0% syntaxfouten).
- • Één enkele voorwaartse lus verifieert SSA-volgorde, geheugenversies en grenzen in ~5.78 ns/instructie.
- • Het muteren van 1 byte (Byte 2: schedule_hint) schakelt de uitvoering om van 1-core SIMD naar MultiCore + ZoneMap.
Empirische Benchmarkresultaten (80 MB / 10M f64)
| IMPLEMENTATIE | MODUS | LATENTIE | BANDBREEDTE | VS C 8-ACC |
|---|---|---|---|---|
| [A] Imperatief AoS + Vec::collect() | 1-Core AoS + Heap-allocatie | 70.66 ms | 1.13 GB/s | 0.10x |
| [B] Idiomatische Rust SoA (filter().map().sum()) | 1-Core SoA Iteratorketen | 19.12 ms | 4.18 GB/s | 0.38x |
| [C] Handgeschreven C/Rust SoA met 8 Accumulatoren | 1-Core 8-Baans Uitgerolde Baseline | 7.32 ms | 10.92 GB/s | 1.00x (Baseline) |
| [D] Rul (.rl) Tier 2 Gefuseerde SIMD (0x11) | 1-Core L1-Tile SIMD (SimdStream) | 5.91 ms | 13.53 GB/s | 1.24x (1-Core vs 1-Core) |
| [E] Rul (.rl) Tier 2 MultiCore (0x12) | Alle Cores (1-Byte Schedule-mutatie) | 3.19 ms | 25.04 GB/s | 2.29x (Schedule Byte) |
| [F] Rul (.rl) Tier 2 MultiCore + ZoneMap | Alle Cores + O(1) Overslaan van Koude Tiles | 1.55 ms | 51.53 GB/s | 4.72x (Peak Speedup) |
Citeer Rul (.rl) in Onderzoek
@software{rul_2026_spec,
author = {Rul Core Architecture Team},
title = {{Rul (.rl): A 128-Bit Schedule- and Proof-Carrying Binary SSA-DAG Programming Language and Execution Engine for Autonomous AI Agents}},
month = oct,
year = 2026,
publisher = {Zenodo},
version = {0.4.0},
doi = {10.5281/zenodo.23722094},
url = {https://doi.org/10.5281/zenodo.23722094}
}Prior Art & Cryptografische Verificatie
SHA-256 controlegetallen van de kernspecificatie en Rust-implementatie verankerd via OpenTimestamps in docs/prior_art/.
| ARTEFACTPAD | ROL | SHA-256 CONTROLEGETAL |
|---|---|---|
| docs/rul_spec_v0.md | Officiële .rl Binaire Layout & O(N) Verifier Specificatie | 9174ff81b429b19785646f25707034a36b4ba7b4a7964b7e04ddbc31fda9d9c6 |
| docs/WHITEPAPER_RUL_V0_1.md | Technische Whitepaper & Empirische Evaluatie (Zenodo DOI) | 141ea3d9b348369b4e233746619fee443387e931c821fe2eb32b93f760571b98 |
| docs/new_language_for_AI.md | Architecturale First-Principles Analyse voor AI-Agenten | 88043cda84b7289e9fe26f4bc3547a58b994a91b1df8774bbc206dc6dba5504d |
| src/bytecode.rs | 64B RulHeader, 16B ArenaDescriptor, ProofEntry & 128-bit NodeFrame | 3a8c780cf4181c936b303943eafa3729eba9e519cd9d55569c28f1f630f26c03 |
| src/verifier.rs | Single-Pass O(N) Lineaire Statische Verifier (~5.78 ns/node) | feaa5ae7e94b2bede64772d1ce595286bed35ac2afc9be9b571836813a4eb11b |
| src/engine.rs | 3-Laags Uitvoeringsengine, L1-Tile Fuser, ZoneMap & White-Box Tracer | 8037e2f718dc24d372a67111d9a6c5481ade4ff55a62d1b315b35c9ccf879bcf |
| src/aot.rs | LLVM-Vrije Linux x86_64 AVX2 ELF64 Compiler (~6.4 µs) | fe8eddae822fae0df6ea751aaa7919fc81675a7c169d2aadb4c3b9e6f05f27ac |
| src/mcp.rs | In-Memory stdio JSON-RPC 2.0 Model Context Protocol Server | c58faa2f0ac626412a6c8ef00ae67dabc85b863f4c0ba73c3e16a0ff909a91c6 |