Modular · 2026-08-11 · major
Mojo 1.0 — Modular's AI systems language reaches its first stable release
Mojo 1.0 is the first stable release of Modular's Python-like language for GPU and AI systems code, three years after its 2023 debut. Changes through 1.x will be mostly additive, and the compiler is still due to open source in 2026.

Modular's Python-like language for GPU and AI systems code reaches 1.0 after three years of breaking changes.
Key specs
| GitHub stars | 26.7k |
|---|---|
| Community pull requests | 1,100+ |
Quick facts
| Maker | Modular (a Qualcomm company) |
|---|---|
| Version | Mojo 1.0.0, shipped in Modular 26.5 |
| Stability | Mostly additive changes through 1.x |
| Compiler source | Open source planned for 2026 |
| Migration | Deprecated aliases plus compiler fix-its |
| Also in 26.5 | MAX adds GLM-5.2 and Nemotron-H support |
What is it?
Mojo 1.0 is the first stable release of Modular's language for GPU and AI systems programming, and the 1.0 tag is mainly a promise about change rather than a feature list. Modular is telling library authors the ground will stop moving, so the growing set of community Mojo libraries can finally target a fixed language. The release ships inside Modular 26.5 alongside the MAX inference server.
How does it work?
Reaching 1.0 meant tightening the language rather than growing it. Pointer and UnsafePointer collapse into a single type, with risky operations now spelled out with an unsafe_ prefix instead of the type carrying the warning. Collections hand back element references bound to interior origins, so the compiler rejects code that holds a reference across a mutation. New Python-style lambda syntax covers inline closures, and a reworked import system requires from for relative imports.
Why does it matter?
A stable 1.0 is what lets an ecosystem form. Until now every Modular release could rename core types under library authors, so Mojo packages had to chase the compiler instead of each other. With stable APIs pinned and most breaking changes carrying a compiler fix-it, teams writing GPU kernels or inference code in Mojo can plan past the next release. It also sets up the compiler open-sourcing Modular still owes for 2026.
Who is it for?
GPU and AI infrastructure engineers
Frequently asked questions
- Is the Mojo compiler open source?
- Mojo's compiler and toolchain are not open source yet. The 1.0 post repeats the plan: 'Our commitment remains unchanged – we will open source the Mojo compiler and toolchain in 2026.' Community work already lands in the public Modular repository, where nearly 200 contributors have merged more than 1,100 pull requests changing over 200,000 lines of code.
- What breaks when I move existing code to Mojo 1.0?
- Mojo 1.0 carries more breaking changes than a normal release. Variable declarations now require var, a method's self must be typed as Self, Pointer and UnsafePointer merge into one type, and several core names change: size becomes length, InlineArray becomes Array, StringSlice becomes StringSpan. Modular says nearly every breaking change ships with a deprecated alias and a compiler fix-it, so migration is mechanical.
- How stable is Mojo now that it is 1.0?
- The Mojo 1.0 release notes state that APIs marked stable won't be removed or changed in a way that breaks source compatibility. The first stable set covers Deinitable, Movable, Copyable, Array, List, Span, String, Bool and Optional. Modular still allows breaking changes later, but says they will follow the standards of a mature language such as C++.
- What else shipped in Modular 26.5 besides Mojo 1.0?
- Modular 26.5 also updates MAX, the company's inference server. MAX gains support for GLM-5.2 and Nemotron-H, both hybrid Mamba-2 models, and installation splits into granular packages so you can pick max["serve"], max["benchmark"] or max["all"]. The older modular package retires in 26.6.
Try it
uv pip install --upgrade mojo