https://github.com/suhteevah/aether
AI-native systems language. Close to the metal, LLM-readable, comments stripped at lex time.
https://github.com/suhteevah/aether
ai autodiff compiler jit llm machine-learning programming-language rust systems-programming
Last synced: 9 days ago
JSON representation
AI-native systems language. Close to the metal, LLM-readable, comments stripped at lex time.
- Host: GitHub
- URL: https://github.com/suhteevah/aether
- Owner: suhteevah
- Created: 2026-05-02T11:36:42.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-06-06T02:43:53.000Z (17 days ago)
- Last Synced: 2026-06-06T04:20:34.901Z (17 days ago)
- Topics: ai, autodiff, compiler, jit, llm, machine-learning, programming-language, rust, systems-programming
- Language: Rust
- Size: 6.81 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Roadmap: docs/ROADMAP_V2.md
Awesome Lists containing this project
README
# Aether
AI-native systems language. Close to the metal, LLM-readable, comments stripped at lex time.
See `SPEC.md` for the full spec, war doc, and roadmap. See `CLAUDE.md` for coder/agent instructions, and `HANDOFF.md` for the latest session state.
## Build
```
cargo build --workspace --release
cargo test --workspace
```
## Audit
```
powershell -ExecutionPolicy Bypass -File scripts\audit.ps1
```
Single-command honesty audit: SLOC per crate, every stub / panic / unsafe / `Phase N` marker surfaced with file:line, golden-artifact diffs, language-conformance suite (positive samples must check clean, negative samples must fail with a specific `AE####` code). Run it before claiming any work is done.
## Train a model
AetherLM-Nano (~85K params) on a synthetic corpus, CPU only, no framework deps:
```
.\target\release\aether-train.exe --config nano --steps 60 --batch 8 --seq 32 --lr 3e-3
.\target\release\aether-infer.exe --ckpt checkpoints\aether_lm --prompt "the quick" --max-new 60
```
Loss drops from ~5.5 to ~0.8 in under 10 seconds. Sampled text reproduces fragments of the training corpus. **Every tensor operation goes through `runtime/src/lib.rs`'s C-ABI surface — no candle, no torch, no framework.** When aetherc Phase 1 lands, the same binary will be emitted directly from `examples/aether_lm.aether`.
## Compile to a native binary through Aether's own assembler
```
target\release\aetherc.exe examples\00_hello.aether --emit=aether-bin -o hello.exe
.\hello.exe
```
This walks: `.aether` source → x86-64 AT&T assembly (aetherc backend) → 252-byte COFF .obj (`aether_asm/`, our own x86-64 instruction encoder + PE32+ writer) → linked .exe. **No LLVM, no C compiler, no GAS.** The system linker is the last external tool — replaced in Phase 5.
You can also stop at intermediate stages:
```
target\release\aetherc.exe examples\00_hello.aether --emit=asm
target\release\aether-asm.exe hello.s -o hello.obj
```
## Inspect the language
```
target\release\aetherc.exe examples\aether_lm.aether --check
target\release\aetherc.exe examples\aether_lm.aether --emit=mir
target\release\aetherc.exe examples\aether_lm.aether --emit=llvm-ir
```
## Layout
* `compiler/` — `aetherc` (Rust, bootstrap). Lexer (comment-stripping), parser, AST, MIR + autodiff graph, LLVM text emitter, C fallback, **and direct x86-64 assembly backend**.
* `aether_asm/` — our own x86-64 instruction encoder and Windows PE32+ COFF writer. Phase 5 rewritten in Aether.
* `runtime/` — `libaether_rt`. Thin C-ABI shim with **real f32 CPU implementations** of matmul, gelu, softmax, layer_norm, scaled-dot-product-attention, cross_entropy, AdamW, and all their backwards. Phase 1 swaps each body to cuBLAS / cuDNN / NCCL — symbol surface stays identical. `runtime/ABI.md` is the contract.
* `trainer/` — Rust binaries (`aether-train`, `aether-infer`, `aether-prepare`) that call **only** runtime symbols. What aetherc Phase 1 will emit from the Aether source.
* `stdlib/` — `.aether` source for the language stdlib (`ops`, `optim`, `nn`, `tensor`). Every primitive op is an `extern fn` resolving to a runtime symbol.
* `examples/` — `.aether` programs: hello, matmul, distributed training, LLM serving, and `aether_lm.aether` (AetherLM-Tiny in pure Aether).
* `docs/`, `SPEC.md`, `CLAUDE.md`, `HANDOFF.md` — design + session state.
## Philosophy
Aether is the language; cuBLAS/cuDNN/NCCL are the bare-metal targets. Nothing in between. No PyTorch, no candle, no JAX, no XLA. The Rust runtime is a bootstrap concession — Aether self-hosts in Phase 5.
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
---
## Support This Project
If you find this project useful, consider buying me a coffee! Your support helps me keep building and sharing open-source tools.
[](https://www.paypal.me/baal_hosting)
**PayPal:** [baal_hosting@live.com](https://paypal.me/baal_hosting)
Every donation, no matter how small, is greatly appreciated and motivates continued development. Thank you!