Roadmap Tecnica Rul (.rl) — Da Motore v0.4 a Linguaggio di Sistema General-Purpose v1.0
Roadmap ingegneristica in quattro milestone che espande Rul (.rl) da un motore di calcolo colonnare a 29 opcode (v0.4) a un linguaggio di sistema general-purpose che sostituisce Rust e Go per il software generato dall'IA (v1.0).
Perché Siamo Partiti dalle Pipeline Dati (da v0.1 a v0.4)
Per dimostrare che il formato di istruzione binario da 16 byte funziona sul silicio reale prima di aggiungere costrutti di linguaggio general-purpose, abbiamo limitato le Fasi da v0.1 a v0.4 alle pipeline di elaborazione di array e vettori (29 opcode) — dimostrando una verifica O(N) in ~5.78 ns/nodo, una compilazione ELF64 autonoma in ~6.4 µs e un throughput di 51.53 GB/s.
Quattro Milestone verso il Linguaggio di Sistema General-Purpose v1.0
Core SSA-DAG Colonnare a 29 Opcode, Tracciatore White-Box & AOT AVX2 ELF64
Ha dimostrato il formato di istruzione binario da 16 byte, il verificatore O(N) a passata singola (~5.8 ns/nodo), il motore di esecuzione a 3 livelli, il server rul-mcp e il compilatore nativo Linux ELF64 senza LLVM (~6.4 µs) su hardware reale.
- 01. RulHeader da 64 byte, ArenaDescriptor da 16 byte, ProofEntry da 16 byte e NodeFrame da 16 byte su 29 opcode.
- 02. Assembler simbolico senza perdite .rls <-> .rl, CLI rul autonoma, rul-bench e server rul-mcp a 6 strumenti.
- 03. Allocatore lineare di registri YMM (ymm2..ymm13) che raggiunge 51.53 GB/s (4.72x rispetto al C) su array da 80 MB.
Flusso di Controllo General-Purpose, Funzioni & Tipi di Dati Composti
Espandere il set di istruzioni da 16 byte oltre gli array numerici per supportare scalari generali, struct, enum, stringhe UTF-8, hash map, diramazioni condizionali e cicli con terminazione dimostrata.
- 01. Supporto nativo per i64, i32, u8, f32, struct a layout fisso, unioni etichettate algebriche, stringhe UTF-8 convalidate e hash map d'arena.
- 02. SelectBranch: diramazione condizionale che richiede a entrambi i rami di convergere nello stesso stato di versione della memoria (controllato in O(1)).
- 03. RegionLoop & Call: cicli limitati con certificati di terminazione ProofEntry e funzioni modulari verificate senza inlining dell'intero programma.
Proprietà dell'Heap di Livello Rust & Lifetime delle Struct in Tempo O(N)
Generalizzare le versioni TokenOp a 32 bit e i certificati ProofEntry da 16 byte dagli array piatti alle allocazioni sull'heap basate su regioni e ai prestiti dei campi delle struct.
- 01. Allocazione e deallocazione deterministica dell'heap in regioni legata a token di proprietà lineare con zero GC e zero frammentazione da malloc/free.
- 02. Certificati ausiliari ProofEntry per mutazioni disgiunte dei campi delle struct e lifetime di sotto-slice zero-copy controllati in O(1) per istruzione.
- 03. Protezione completa contro use-after-free, double-free e aliasing senza risoluzione di vincoli del borrow-checker di diversi secondi.
Concorrenza Deterministica in Stile Go & I/O del SO Controllato da Capacità
Introdurre task leggeri, canali con trasferimento di proprietà e bit granulari di capacità nell'header che regolano le syscall di file, rete e processi.
- 01. L'invio di un buffer su un canale tipizzato esegue un AffineConsume sul token del mittente e trasferisce la proprietà al destinatario — prevenendo data race al caricamento senza GC.
- 02. Estendere RulHeader.capability_mask a 64 bit per controllare letture/scritture su filesystem, socket di rete, timer e sottoprocessi.
- 03. Un binario .rl con CAP_NONE (0x0) è matematicamente bloccato dall'effettuare qualsiasi chiamata di rete o disco prima dell'inizio dell'esecuzione.
Backend Nativi Multi-Architettura (x86_64, ARM64, WASI) & Prove Formali di Correttezza
Emettere eseguibili autonomi per Linux, macOS, Windows e WebAssembly senza LLVM, supportati dal model checking Kani e da una suite di conformità v1.0 di 50 programmi.
- 01. Generazione di codice nativo senza LLVM per x86_64 e AArch64 (ARM64) su Linux, macOS e Windows, oltre a moduli WASI deterministici.
- 02. Prove di bounded model-checking (Kani) e fuzzing differenziale continuo su decodificatore binario, verificatore O(N) e codegen nativo.
- 03. Specifica binaria .rl v1.0 congelata e suite pubblica di test di conformità di 50 programmi.
Regole Ingegneristiche Fondamentali (Non-Obiettivi)
Ogni proprietà di sicurezza (tipi, proprietà, limiti, terminazione dei cicli, capacità di I/O) deve essere verificabile in una singola passata in avanti O(N).
Zero pause GC e zero thread nascosti a runtime; il ciclo di vita della memoria è tracciato esplicitamente tramite arene e regioni versionate.
Ogni livello di esecuzione (Tier 0, Tier 1, Tier 2 ed ELF64 AOT) deve produrre risultati corrispondenti o fallire in modo sicuro con un errore deterministico.