-
Notifications
You must be signed in to change notification settings - Fork 6
Home
Zeta is a systems programming language designed for high-performance, safe, and concurrent software development. It emphasizes algebraic data types, affine ownership models, and actor-based concurrency, drawing inspiration from Rust, Haskell, Erlang, Zig, OCaml, Julia, Lisp, COBOL, Forth, MATLAB, JavaScript, TypeScript, and Python. Zeta's type system integrates concepts from semiring theory to enable optimized algebraic operations, while its borrow checker enforces memory safety without a garbage collector. The language targets LLVM for code generation, supporting just-in-time (JIT) and ahead-of-time (AOT) compilation.
First released on November 27, 2025, Zeta achieved true self-hosting in January 2026. The latest release, v0.3.0 "The Dawn of True Self-Hosting" (January 20, 2026), completes the bootstrap: the compiler now compiles itself almost entirely in Zeta, with only minimal Rust glue remaining for the runtime and JIT. The Zeta compiler is ~3,100 lines and compiles itself in 14 ms on high-end hardware. This milestone builds on rapid progress in JIT execution, concurrency, optimizations, ergonomics, and code-generation maturity.[^1]
Zeta's syntax is concise and expression-oriented, with a focus on immutability by default and explicit mutability via borrowing. It supports traits via "concepts" and their implementations, enabling both nominal and structural dispatch. The language is designed for systems-level tasks like operating systems, embedded devices, and distributed systems, with built-in support for constant-time cryptography and standard library embeddings for networking and I/O.
| Property | Value |
|---|---|
| Paradigm | Generic, systems, functional, concurrent, imperative, structured |
| First released | November 27, 2025 |
| Designer | Dr. Roy Murphy |
| Developer | Zeta Foundation |
| Latest release | v0.3.0 / January 20, 2026 |
| Typing discipline | Affine, static, strong, inferred, nominal |
| Scope | Lexical |
| Platform | Cross-platform |
| License | MIT |
| Website | https://z-lang.org |
| Influenced by | Rust, Haskell, Erlang, Zig, OCaml, Julia, Lisp, COBOL, Forth, MATLAB, JavaScript, TypeScript, Python |
| File extension | .z |
Zeta is the brainchild of Dr. Roy Murphy, a mathematician, cryptographer, computer scientist, and programmer with a Ph.D. in Theoretical Computer Science and decades of experience creating global scaling solutions. Active on X as @murphsicles, Murphy is the creator of Zeta and hundreds of other projects.[^2] Driven by an obsession with first-principles engineering and absolute efficiency, Murphy sought to create a language that realizes the foundational abstractions in Alexander Stepanov's Elements of Programming in a practical, high-performance form.[^3]
Originating as an internal project at xAI in early 2025, the language was motivated by the need for a systems programming tool that combines Rust's safety with mathematical rigor from algebraic structures and scalable concurrency from actor models. The project is now overseen by the Zeta Foundation, a non-profit organization dedicated to advancing the Zeta language through funding of compiler development, standards work, and community initiatives via corporate memberships.[^4]
The initial prototype was released on November 27, 2025, with rapid iteration leading to true self-hosting by January 2026. Development milestones are tracked in the project's development plan on GitHub.
| Version | Date | Summary of Changes | Notes |
|---|---|---|---|
| v0.3.0 | January 20, 2026 | "The Dawn of True Self-Hosting": Full self-hosted bootstrap; compiler ~3,100 LOC in Zeta; minimal Rust glue; affine borrow checker, MIR lowering, semiring fusion in Zeta; compiles itself in 14 ms.[^1] | Latest release |
| v0.2.3 | January 20, 2026 | "The Execution Horizon": Real execution of Zeta-emitted LLVM IR via full Inkwell-backed JIT.[^5] | |
| v0.2.2 | January 20, 2026 | "The Bootstrap Breakthrough": Full frontend, middle-end, backend, and runtime ported to Zeta; non-trivial programs run natively.[^6] | |
| v0.2.1 | January 14, 2026 | "The Execution Breakthrough!": Real JIT execution from Zeta IR; enhanced emission for locals/calls/branches/dict ops.[^7] | |
| v0.2.0 | January 5, 2026 | "The Self-Hosting Dawn!": Core compiler components ported to pure Zeta; modular self-hosted structure.[^8] | |
| v0.1.7 | January 4, 2026 | "Ergonomics Revolution!": Rich string methods, + for concatenation, implicit &str conversions, visual MIR dumps, DWARF metadata.[^9] |
|
| v0.1.6 | December 31, 2025 | "The Concurrency Revolution is Here!": Robust actor system, real HTTP GET (reqwest + rustls), single global Tokio runtime.[^10] | |
| v0.1.5 | December 29, 2025 | "The Optimizer": Full CTFE of binary operations/call chains/const functions; SemiringFold fusion; persistent disk caching; codebase cleanup.[^11] | |
| v0.1.4 | December 28, 2025 | Pure LLVM str_concat; MLGO-driven optimization pipeline; full SIMD vectorization; native target config; up to 3.2× speedup, 40% smaller binaries.[^12] | |
| v0.1.3 | December 28, 2025 | Algebraic SemiringFold fusion; proper RAII defer lowering; full Result<?> propagation; native dictionary literals/subscripting.[^13] | |
| v0.1.2 | December 28, 2025 | Advanced trait resolution with associated types; parametric generics; full CTFE; expanded stable ABI checks.[^14] | |
| v0.1.1 | December 27, 2025 | Full f-string interpolation; defer statements with RAII lowering; internal fixes; Rust 2024/Inkwell 7.1/LLVM 21.1/nom 8.0 compatibility.[^15] | |
| v0.1.0 | December 25, 2025 | Major refactor into modular layers; CacheSafe TBAA/TimingOwned; thin monomorphization; Affine checker 2.0; actor runtime with M:N threads.[^16] | |
| v0.0.9 | December 19, 2025 | Bug fixes; full enum support; trait resolution and generics for Result/Map; MIR for generics/error propagation/DictLit/Subscripts.[^17] | Pre-release |
| v0.0.8 | December 18, 2025 | Actor runtime enhancements; codegen parameter init fixes; MIR error propagation improvements.[^18] | Pre-release |
| v0.0.7 | December 17, 2025 | Full annotations audit and documentation update; Cargo.toml bump; no breaking changes.[^19] | Pre-release |
| v0.0.6 | December 17, 2025 | Error propagation (? and Result); dictionary/map support; single-line functions; complex assignments; parsing/AST/resolver/borrow checker/MIR/codegen updates.[^20] | Pre-release |
| v0.0.5 | December 15, 2025 | Unified string support; ABI/safety checks; CTFE semiring folding; affine moves; async actor runtime; bootstrap pipeline; optimizations.[^21] | Pre-release |
| v0.0.4 | December 14, 2025 | Unified str with concatenation, f-strings, rich methods; implicit borrows; zero-cost Vec interop; structural dispatch.[^22] | Pre-release |
| v0.0.3 | December 13, 2025 | Unified String type; affine ownership in MIR; semiring operations and CTFE; specialization cache; async with Tokio/mpsc; bootstrap JIT.[^23] | Pre-release |
| v0.0.2 | December 7, 2025 | Self-hosting JIT bootstrap; affine checking; TimingOwned constant-time; type inference/generics/structural; semiring CTFE; actor M:N scheduler.[^24] | Pre-release |
| v0.0.1 | December 4, 2025 | Initial alpha release with core compiler: parser, resolver, MIR, LLVM codegen, minimal actor/std runtime.[^25] | Pre-release |
| v0.0.0 | November 27, 2025 | Initial prototype release: Core parser (nom), AST, resolver, affine borrow checker, MIR, LLVM codegen with JIT; algebraic semiring structures; actor runtime; TimingOwned; hybrid traits; defer RAII; standard library embeddings.[^26] | Initial release |
Zeta's design centers on three pillars:
- Algebraic Safety: Types are augmented with semiring operations for verifiable optimizations.
- Affine Ownership: An affine borrow checker tracks ownership states to ensure linear resource usage.
- Concurrent Isolation: Actors communicate via typed channels with a work-stealing scheduler.
The language rejects garbage collection in favor of compile-time ownership, but provides RAII-like defer statements for cleanup. Constant-time execution is guaranteed via the TimingOwned wrapper.
Zeta's syntax is C-like but minimalist. Keywords are lowercase, identifiers follow standard conventions, and comments use // or /* */.
let x: i64 = 42; // Explicit type
let y = 3.14; // Inferred as f32
let y = y?;
let mut z: i64 = 0; // Mutable
Functions:
fn add<T>(a: T, b: T) -> T {
a + b
}
let greeting = "Hello, world!";
let name = "Zeta";
let version = 0.1.5;
let msg = f"Hello {name} v{version}! 🚀";
let concat = "Part one" + " " + "part two";
let lower = msg.to_lowercase();
let len = msg.len(); // i64
let replaced = msg.replace("Zeta", "World");
let bytes: Vec<u8> = msg.as_bytes();
let from_bytes = str::from_bytes(bytes);
Binary operations desugar to concept methods:
let sum = a.add(b); // Equivalent to a + b
Pattern matching:
match value {
Some(x) => x,
None => 0,
}
Zeta is statically typed with local inference. Built-in types include primitives (i64, f32, bool), unified owned str, borrowed &str, Vec<u8>, and wrappers like TimingOwned<T>.
Concepts act as traits with support for nominal and structural dispatch. Generics use <T> syntax with partial specialization on cache-safe types.
The affine type system prevents use-after-move and double-free without runtime cost.
Zeta uses an actor model with isolated state and message passing via typed channels. The runtime includes a work-stealing thread-pool scheduler with async support.
spawn worker(chan) {
loop {
let msg = chan.recv();
// process
chan.send(reply);
}
}
Minimal but growing, with embeddings for C interop, I/O, networking intrinsics, time, collections, and comprehensive string operations.
The reference implementation zetac is written in Rust (2024 Edition) using Inkwell 0.8.0 with LLVM 21.1 and nom 8.0. Features include JIT execution, thin monomorphization, semiring folding, string literal globals, concat chain optimization, and MLGO-guided passes.[^27]
As a rapidly evolving language with the recent achievement of true self-hosting, Zeta has attracted interest for its unique combination of algebraic rigor, memory safety, and modern ergonomics—particularly the unified string support, error handling, AI-guided optimizations, and advanced CTFE. Early users praise its concise syntax and performance in numerical, cryptographic, and text-processing workloads.
- Rust
- Haskell
- Erlang
- Nim
- Elements of Programming
[^1]: https://github.com/murphsicles/zeta/releases/tag/v0.3.0 [^2]: https://x.com/murphsicles [^3]: https://www.elementsofprogramming.com/eop.pdf [^4]: https://z-lang.org/get-involved.html [^5]: https://github.com/murphsicles/zeta/releases/tag/v0.2.3 [^6]: https://github.com/murphsicles/zeta/releases/tag/v0.2.2 [^7]: https://github.com/murphsicles/zeta/releases/tag/v0.2.1 [^8]: https://github.com/murphsicles/zeta/releases/tag/v0.2.0 [^9]: https://github.com/murphsicles/zeta/releases/tag/v0.1.7 [^10]: https://github.com/murphsicles/zeta/releases/tag/v0.1.6 [^11]: https://github.com/murphsicles/zeta/releases/tag/v0.1.5 [^12]: https://github.com/murphsicles/zeta/releases/tag/v0.1.4 [^13]: https://github.com/murphsicles/zeta/releases/tag/v0.1.3 [^14]: https://github.com/murphsicles/zeta/releases/tag/v0.1.2 [^15]: https://github.com/murphsicles/zeta/releases/tag/v0.1.1 [^16]: https://github.com/murphsicles/zeta/releases/tag/v0.1.0 [^17]: https://github.com/murphsicles/zeta/releases/tag/v0.0.9 [^18]: https://github.com/murphsicles/zeta/releases/tag/v0.0.8 [^19]: https://github.com/murphsicles/zeta/releases/tag/v0.0.7 [^20]: https://github.com/murphsicles/zeta/releases/tag/v0.0.6 [^21]: https://github.com/murphsicles/zeta/releases/tag/v0.0.5 [^22]: https://github.com/murphsicles/zeta/releases/tag/v0.0.4 [^23]: https://github.com/murphsicles/zeta/releases/tag/v0.0.3 [^24]: https://github.com/murphsicles/zeta/releases/tag/v0.0.2 [^25]: https://github.com/murphsicles/zeta/releases/tag/v0.0.1 [^26]: https://github.com/murphsicles/zeta/releases/tag/v0.0.0 [^27]: https://crates.io/crates/zetac