Whitepaper y evaluación empírica de Rul (.rl) — Zenodo DOI 10.5281/zenodo.23722094
Whitepaper técnico, desglose arquitectónico desde primeros principios, metodología de benchmark columnar de 80 MB y verificación criptográfica Prior Art SHA-256 para Rul (.rl).
Rul (.rl): Un lenguaje de programación binario SSA-DAG de 128 bits portador de planificación y pruebas
Los lenguajes de programación tradicionales (C, Go, Rust, Python) están diseñados en torno a las limitaciones biológicas humanas: entrada de teclado de bajo ancho de banda (~40 bits/s) y lectura visual de código ASCII, lo que impone un enorme impuesto de serialización, análisis sintáctico, inferencia de tipos y optimización LLVM a los agentes de IA autónomos.
Rul (.rl) elimina el código fuente textual como representación principal y lo reemplaza con un SSA-DAG topológico binario plano mapeado en memoria (mmap), donde cada instrucción es una trama NodeFrame fija de 128 bits (16 bytes) que codifica Algorithm + ScheduleHint + ProofIdx + AffineToken/ReadLease. Como el agente de IA emite indicaciones explícitas de planificación y testigos de seguridad junto con el algoritmo, el compilador de Rul realiza cero inferencia de tipos y cero búsquedas: un verificador lineal O(N) de un solo pase garantiza matemáticamente el 100 % de ausencia de aliasing de memoria, use-after-consume, desbordamientos de búfer y violaciones de sandbox en ~5,78 ns/nodo, mientras que el motor de 3 niveles y el compilador AOT x86_64 ELF64 fusionan pipelines columnares de múltiples etapas en bucles de registros en ~6,4 µs.
Por qué los lenguajes de texto humanos son un cuello de botella para los agentes de IA
- • La IA serializa su intención tensorial interna en miles de caracteres ASCII (pub fn, llaves, puntos y comas).
- • El compilador dedica segundos al análisis léxico, construcción de AST y búsquedas NP-difíciles del Borrow Checker y asignación de registros.
- • La planificación de hardware (SIMD / división en caché / hilos) está enredada dentro de la sintaxis de bucles imperativos.
- • La IA emite tramas binarias de 16 bytes directamente (0 ms de parseo, 0 % de errores de sintaxis).
- • Un único bucle hacia adelante verifica el orden SSA, las versiones de memoria y los límites en ~5,78 ns/instrucción.
- • Mutar 1 byte (Byte 2: schedule_hint) cambia la ejecución de SIMD de 1 núcleo a MultiCore + ZoneMap.
Resultados empíricos de benchmark (80 MB / 10M f64)
| IMPLEMENTACIÓN | MODO | LATENCIA | ANCHO DE BANDA | VS C 8-ACC |
|---|---|---|---|---|
| [A] AoS imperativo + Vec::collect() | 1 núcleo AoS + Asignación en heap | 70.66 ms | 1.13 GB/s | 0.10x |
| [B] Rust SoA idiomático (filter().map().sum()) | 1 núcleo Cadena de iteradores SoA | 19.12 ms | 4.18 GB/s | 0.38x |
| [C] C/Rust SoA de 8 acumuladores escrito a mano | 1 núcleo 8 carriles desenrollados (Base) | 7.32 ms | 10.92 GB/s | 1.00x (Baseline) |
| [D] Rul (.rl) Tier 2 SIMD fusionado (0x11) | 1 núcleo Bloque L1 SIMD (SimdStream) | 5.91 ms | 13.53 GB/s | 1.24x (1-Core vs 1-Core) |
| [E] Rul (.rl) Tier 2 MultiCore (0x12) | Todos los núcleos (Mutación de 1 byte de planificación) | 3.19 ms | 25.04 GB/s | 2.29x (Schedule Byte) |
| [F] Rul (.rl) Tier 2 MultiCore + ZoneMap | Todos los núcleos + Salto O(1) de bloques fríos | 1.55 ms | 51.53 GB/s | 4.72x (Peak Speedup) |
Citar Rul (.rl) en investigación
@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}
}Verificación de autoría y Prior Art criptográfico
Resúmenes SHA-256 de la especificación central y la implementación en Rust anclados mediante OpenTimestamps en la blockchain de Bitcoin en docs/prior_art/.
| RUTA DEL ARTEFACTO | ROL ARQUITECTÓNICO | RESUMEN SHA-256 |
|---|---|---|
| docs/rul_spec_v0.md | Especificación oficial del diseño binario .rl y del verificador O(N) | 9174ff81b429b19785646f25707034a36b4ba7b4a7964b7e04ddbc31fda9d9c6 |
| docs/WHITEPAPER_RUL_V0_1.md | Whitepaper técnico y evaluación empírica (Zenodo DOI) | 141ea3d9b348369b4e233746619fee443387e931c821fe2eb32b93f760571b98 |
| docs/new_language_for_AI.md | Desglose arquitectónico desde primeros principios para agentes de IA | 88043cda84b7289e9fe26f4bc3547a58b994a91b1df8774bbc206dc6dba5504d |
| src/bytecode.rs | Definiciones de RulHeader 64B, ArenaDescriptor 16B, ProofEntry y NodeFrame de 128 bits | 3a8c780cf4181c936b303943eafa3729eba9e519cd9d55569c28f1f630f26c03 |
| src/verifier.rs | Verificador estático lineal O(N) de un solo pase (~5,78 ns/nodo) | feaa5ae7e94b2bede64772d1ce595286bed35ac2afc9be9b571836813a4eb11b |
| src/engine.rs | Motor de ejecución de 3 niveles, fusionador L1-Tile, ZoneMap y trazador de caja blanca | 8037e2f718dc24d372a67111d9a6c5481ade4ff55a62d1b315b35c9ccf879bcf |
| src/aot.rs | Compilador Linux x86_64 AVX2 ELF64 sin LLVM (~6,4 µs) | fe8eddae822fae0df6ea751aaa7919fc81675a7c169d2aadb4c3b9e6f05f27ac |
| src/mcp.rs | Servidor Model Context Protocol JSON-RPC 2.0 en memoria sobre stdio | c58faa2f0ac626412a6c8ef00ae67dabc85b863f4c0ba73c3e16a0ff909a91c6 |