像 Python 一样写,像 C++ 一样跑:Mojo 1.0 正式发布
写 Python 的人嫌它慢,写 C++ 的人嫌它烦,写 Rust 的人嫌它难。如果你同时有过这三种抱怨,那么今天这个主角,就是为你准备的。
2026 年 8 月 11 日,Modular 公司正式发布 Mojo 编程语言 1.0 版本。从 2023 年诞生时那个被无数人围观的实验项目,到如今稳定、可用于生产环境的通用语言,Mojo 走了三年,兑现了它最初的承诺:像 Python 一样写,像 C++ 一样跑,像 Rust 一样安全。
01 横空出世:诞生即顶流
Mojo 从出生的第一天起,就自带光环。因为它的创造者是 Chris Lattner——LLVM 编译器基础设施和 Swift 语言的缔造者,整个现代编程世界绕不开的名字。
2023 年,Mojo 首次亮相时,官方给出的定位就极具冲击力:Python 的超集,但性能可以提升几个数量级。彼时 AI 社区正被"Python 太慢、GPU 代码太难写"折磨得苦不堪言,Mojo 的出现仿佛黑夜中的一道光。消息一出,社区瞬间沸腾——开发者们排队申请内测资格,技术论坛上关于 Mojo 的讨论长期霸榜。
三年过去,热度没有消退,反而沉淀成了实打实的生态。1.0 版本发布之际,Mojo 标准库在 Apache 2.0 许可下正式开源,吸引了近 200 名贡献者提交了超过 1100 个拉取请求,累计修改超过 20 万行代码。这意味着它不再是少数人的实验品,而是一个由全球开发者共同浇筑的公共基础设施。
更值得注意的是它的"自我验证":Mojo 1.0 已经成为 Modular 公司自身商业基础设施——MAX 平台和 Modular Cloud 的核心组成部分。也就是说,这不是一个"先发布、再等市场检验"的语言,而是先在自家最严苛的生产环境里跑通了,才敢拿出来见人。
02 设计初衷:AI 时代的碎片化之痛
Mojo 为什么被设计出来?答案藏在 AI 开发者的日常里。
今天做 AI 应用,一个人往往要同时面对五六种语言和工具:用 Python 写模型原型,用 C++ 或 CUDA 写高性能算子,用 CUDA 或 ROCm 跑 GPU,用专门的工具链部署到芯片上。每一层都有自己的语法、自己的编译器、自己的坑。Modular 团队在构建自家 AI 平台时,对这种"碎片化"的感受尤为深切——工具链的复杂度,已经远远超过了问题本身的复杂度。
Mojo 要解决的,正是这个被所有人默认接受、却没有人愿意去撬动的痛点:能不能用一门语言,从 Python 原型一路写到硬件加速器部署的全流程?
所以 Mojo 首先是一个"硬件编程"问题,其次才是一个"语言"问题。它的愿景是"一次编写,到处运行":同一套代码,无缝地跑在 CPU、GPU、TPU 和各种 AI 加速芯片上,摆脱对特定厂商库的绑定。为此,Mojo 内置了对多种 AI 芯片的硬件抽象层(HAL),用统一的语法为不同芯片编写优化代码。
如果说 Rust 的答案是"如何安全地控制系统",那么 Mojo 的答案就是"如何统一地驾驭 AI 硬件"。这是 Rust 未曾涉足、也无法优雅解决的领域问题,也是 Mojo 存在的根本理由。
03 三强对决:Mojo、Python 与 Rust
要看清 Mojo 的价值,最好的办法是把三门语言摆在一起。
性能上的差距,用数据说话最直观。在计算密集型任务上,Mojo 比 Python 快一到两个数量级:N-body 问题(50 万次迭代的密集浮点运算),CPython 3.14 耗时 1242 毫秒,Mojo 仅需 16 毫秒,加速 78 倍;Spectral-norm 基准,CPython 耗时 14046 毫秒,Mojo 只用 118 毫秒,加速高达 119 倍;在矩阵乘法的实证评估中,Mojo 实现了最高 77 倍的加速。
这背后的功臣是编译时优化:SIMD 向量化和循环展开等技术,让 Mojo 能充分压榨硬件的每一分算力。而 Python 作为解释型语言,天然无法做到这一点。
与 Rust 的对比则更有意思:两者性能在同一梯队,互有胜负。在 DNA 序列解析测试中,Mojo 比 Rust 快 50%;在 GPU 和内存受限的任务上,Mojo 的表现可与 C++/CUDA 持平。而 Rust 在 Spectral-norm、数独求解和大型 TSV 文本处理等场景中保持领先。这说明 Mojo 并非为了"速度"取代 Rust,而是带着 AI 时代的独特使命而来——它押注的是更现代的 MLIR 编译器基础设施,能对 AI 硬件做更深层的跨层优化,这是诞生于 2009 年、基于 LLVM IR 的 Rust 所不具备的。
04 编程习惯:Python 老手的零门槛迁移
Mojo 最让开发者心动的一点,是它没有另起炉灶,而是选择成为 Python 的"超集"。
第一,语法和 Python 几乎一样。全球数以百万计的 Python 开发者,几乎可以零成本地迁移过来。不需要像学 Rust 那样从头啃所有权和借用规则,Mojo 吸收了这些内存安全概念,却用更贴合 Python 开发者习惯的方式呈现。它甚至避免了 Rust 默认 move 语义带来的一堆让新手困惑的编译器报错。
第二,可以直接引用 Python 的包。这是 Mojo 最惊艳的设计——它对 Python 模块的兼容性是 100% 的。Mojo 直接利用你电脑上现有的 CPython 解释器,这意味着 NumPy、SciPy、PyTorch 等整个 Python 生态的库,导入即可用,行为与在 Python 中完全一致,无需重写一行代码。
代码长这样:
from std.python import Python
def main():
np = Python.import_module("numpy") array = np.array(Python.list(1, 2, 3))
print(array) # 输出 [1 2 3]
第三,渐进式优化,不用全盘重写。这是 Mojo 与 Rust 最根本的体验差异。在 Rust 里,想把 Python 项目提速,往往意味着推倒重来;而在 Mojo 里,你可以先写普通的 Python 代码,等跑通之后,再在性能热点路径上逐步添加类型注解等 Mojo 特性,让编译器把这段代码优化到接近 C++ 的效率。先求对,再求快,每一步都有收益。
这种设计哲学,让 Mojo 的"系统级"不再可怕。它不是要求你一步跨过从 Python 到系统编程的鸿沟,而是给你搭了一座桥——你在桥上走多远,就能收获多少性能,进可攻、退可守。
05 愿景与展望:从 1.0 到"唯一语言"
Modular 公司明确表示,1.0 版本是长期旅程的起点,而非终点。官方的路线图清晰而宏大,分三个阶段推进。
第一阶段:高性能计算核心(已完成)。Mojo 1.0 的发布标志着这一阶段的圆满完成,它已经是一个能编写高性能 CPU、GPU 和 ASIC 内核的稳定生产基础。
第二阶段:系统应用编程(进行中)。这是 1.0 之后最核心的方向,把 Mojo 从 AI 加速计算扩展到更广泛的系统级应用编程。呼声最高的异步编程(async)、模式匹配、标签联合、私有成员等现代语言特性都已列入计划,未来还将深入并行系统编程和高级内存管理。
第三阶段:构建开放生态。Modular 承诺在 2026 年内将 Mojo 编译器和工具链完全开源,回应社区对平台开放性与中立性的关切。同时,在 1.x 版本周期内,Mojo 的演进将以添加新功能为主,尽量避免破坏性变更,给开发者一个稳定的依赖环境。
而 Mojo 的长期愿景,用一句话概括就是:成为开发者面向 CPU、GPU 及其他加速器等多样化硬件进行编程的唯一语言。它想让"为不同芯片写不同代码"成为历史,让 AI 开发者从工具链的泥潭中解放出来,把精力放回算法与产品本身。
2026 年 8 月 18 日的 ModCon 大会,将揭晓更多关于 Mojo、MAX 平台与开源工作的细节。对开发者而言,这是一个值得标记的日子——一门语言的诞生,往往意味着一种新的可能性。
Python 统治了 AI 的上半场,而 AI 的下半场需要性能。Mojo 能不能接住这一棒,答案正在被全球近 200 名贡献者和无数尝试它的开发者共同书写。这一次,写 Python 的人不用再羡慕 C++ 的速度了——因为那把快刀,现在握在了自己手里。
扫码关注 · AI练计箱用最简单的比喻,讲最硬核的技术
— END —