tek-sys-hub / Rubix-lang
git clone https://github.com/tek-sys-hub/Rubix-lang.git
The 100% Pure x86-64 Assembly Systems Language
+11
stars, 24h · #3,253
+1.9k
stars, 7 days · #106
+1.9k
stars, 30 days · #430
1.9k
★ total · +1906% this week
5
forks · 6 open issues
Star history (as recorded here)
LanguageAssembly
LicenseMIT
Created2026-10-19 (4d ago)
Last push1d ago
Watchers1
OwnerUser
GitHub topics
assemblerassemblyassembly-langassembly-languageassembly-language-programmingassembly-x86-64native-compilerprogrammingprogramming-languageprogramming-languagesself-hosted
Links
README excerpt
# Rubix Programming Language (`.ix`) The Ultra-Lightweight x86-64 Systems Programming Language Zero C. Zero libc. Zero LLVM. A ~42 KB compiler building standalone native binaries in sub-milliseconds. [code] > **A sovereign systems programming language whose entire compiler is written in 100% pure x86-64 assembly.** > **Zero libc. Zero C. Zero LLVM. Zero Virtual Machines. Zero bloated toolchains.** > **Produces standalone native executables for Linux ELF64 and Windows PE64.** --- ## ⚡ 10-Second Syntax Preview [code] --- ## 🎯 Why Rubix? (vs. C or Zig) Why choose Rubix over industry standards like C, Zig, or Rust? * **Instant Compilation ( Every Rubix program is authored in the sovereign .ix file format. Designed for pure systems-level performance, .ix source files are converted directly to native machine code by rubix_compiler and orchestrated via the ./rubixc driver. The official .ix file badge reflects Rubix's sharp geometric lineage and uncompromising fidelity to native hardware. --- ## ⚡ Highlights - **Pure Assembly Compiler**: The compiler itself is written completely in GNU x86-64 assembly (`as` + `ld`). No external dependencies or runtime libraries are needed. - **Tiny & Instant**: The compiler binary is only **~42 KB**, with sub-millisecond compilation times. - **Zero-Libc Native Runtimes**: - Compiles `.ix` code into standalone native executables equipped with an adaptive assembly runtime. - **Linux ELF64**: Direct Linux kernel `syscall` dispatch for file I/O, process exit, and 64 KB arena bump allocation. - **Windows PE64 (`-t windows`)**: Dynamic Process Environment Block (`gs:[0x60]`) resolver that walks `kernel32.dll` export directories without requiring import libraries (`.lib`) or MinGW. - **Rich Language Features**: - `for` and `while` loops with `break`, `continue`, and arbitrary nesting - Dynamic heap allocation (`alloc`, `free`) with a high-performance 64 KB arena sub-allocator - Compound `struct` declarations, heap instantiation, and field mutation without name collisions - Full 64-bit IEEE-754 double precision floats (`float`) with SSE2 native arithmetic and relational comparisons - Dynamic array indexing (`arr[i] = val`) and array literal syntax (`[1, 2, 3]`) - First-class function calls with unbounded parameter counts (>6 parameters supported via AMD64 ABI registers + stack spills) - Multi-file module imports (`import "lib.ix"`) - Embedded standard library: File I/O, string manipulation, and math routines - Hardware-trapped integer overflow detection (`jo __rubix_overflow_error`) - Rust-style compiler error diagnostics with source code snippets and caret pointers (`^`) --- ## 🏗️ Compiler Architecture [code] --- ## 📁 Repository Layout [code] --- ## 📖 Language Syntax & Capabilities ### 1. Variables & Basic Types Rubix is statically typed with 64-bit integer primitives (`int`, `bool`, `char`). Type annotations are optional: [code] ### 2. Operators & Safe Arithmetic Supports full precedence: `()`, `