网易首页 > 网易号 > 正文 申请入驻

“编译器之神”打造的AI编程语言——Mojo发布1.0.0b1:像Python一样写,像C++一样跑

0
分享至

5月8日,AI基础设施公司Modular正式发布了Mojo编程语言的首个Beta版本1.0.0b1

这条消息在开发者社区引发了不小的波澜——毕竟,“写起来像Python,跑起来像C++”的承诺,已经让人等了很久。

Modular成立于2022年,由前Google Brain主管Chris Lattner与Google Brain前副总裁Tim Davis联合创立。Lattner是LLVM编译器基础设施、Clang C++编译器以及Swift编程语言的创造者,被誉为“编译器之神”。

Modular的核心使命是解决AI基础设施的碎片化问题。当前AI开发面临严峻挑战:模型需要在不同硬件(NVIDIA、AMD、Intel、Apple Silicon)上运行,开发者被迫维护多套代码;Python生态虽然易用但性能受限,C++高性能代码又难以编写和维护。Modular试图通过统一的技术栈弥合这一鸿沟。


根据Modular官方博客披露,Mojo 1.0正式版预计将在2026年秋季发布,届时将开放编译器源码并提供语言稳定性保证。当前Beta版本包含多项重要功能更新:安全闭包(Safe closures)引入新的捕获语法、trait的条件一致性(Conditional conformance to traits)、以及对可变参数(variadics)的重大改进。

值得关注的是,Modular推出了TileTensor作为LayoutTensor的继任者,进一步简化高性能GPU内核的开发。TileTensor将内存布局作为张量本身的编译时属性,使得GPU内核所需的swizzles、strides和indexing操作可以由类型系统检查,而非依赖人工维护。这一改进显著降低了编写高性能计算代码的门槛。

与此同时,Mojo获得了专属网站mojolang.org,所有Mojo相关文档已迁移至此,docs.modular.com则专注于MAX平台的模型构建与部署文档。

Mojo编程语言

为什么是Mojo?AI时代的性能焦虑

Mojo诞生于2022年底,定位非常明确:解决Python在AI和高性能计算场景下的性能瓶颈。Python凭借其简洁的语法和庞大的生态,成为了AI开发的事实标准语言,但它的解释执行特性也决定了其在计算密集型任务中的天花板。

Mojo的解法很直接——兼容Python语法,但引入编译时类型检查、内存安全和底层硬件访问能力。开发者可以用熟悉的Python风格写代码,在需要性能的地方添加类型注解,编译器就能将其优化到接近C++的执行效率。


1.0.0b1带来了什么?

这次发布的稳定版标志着Mojo从实验性语言迈向可用产品的关键一步。核心特性包括:

  • AI原生设计:作为一门编译型静态语言,Mojo从底层就为现代AI系统的多样化硬件(CPU、GPU、ASIC)优化,特别适合Agentic编程。

  • GPU编程平民化:无需绑定特定厂商的库,也无需单独编译内核代码,开发者可以用同一门语言写CPU和GPU代码。官方示例中,一个GPU向量加法内核的代码量与传统CUDA方案相比大幅减少。

  • Python无缝互操作:Mojo原生支持与Python的互调用。你可以逐步将Python项目中的性能瓶颈迁移到Mojo,而无需重写整个代码库。Mojo代码可以自然导入Python生态,也能被打包分发到Python项目中。

  • 编译时元编程:受Zig启发的comptime机制让开发者能在编译期执行代码、进行条件编译和反射,实现零成本抽象。

相比此前偏向概念介绍的发布,Mojo v1.0.0b1带来了大量触及语言核心与系统编程层面的实质性变更——从关键字统一到指针非空设计,再到全平台GPU硬件支持的扩展,标志着Mojo正在从「实验性语言」向「生产可用」快速演进。

语言统一:fn被废弃,def成为唯一函数关键字

最引人注目的语法变化是 fn关键字正式被标记为deprecated,并将在下一版本变为编译错误。自v0.26.2启动的def/fn统一工作至此完成:def成为Mojo唯一的标准函数声明关键字,且继承了原本fn的非抛异常语义。现有代码中的fn会在编译时收到警告,开发者需要尽早迁移。

与此同时,闭包机制也完成了统一。无状态闭包会自动提升为顶层函数,可作为 FFI 回调传递;新的thin函数效应声明了不携带捕获状态的纯函数指针类型;而abi("C")效应则允许函数使用平台C ABI,实现与C库的安全互操作。捕获列表语法{mut a, b, c^, read}也正式定型,支持按可变引用、不可变引用和移动语义显式捕获变量。

内存安全:UnsafePointer非空化,集合默认开启边界检查

Mojo在内存安全方面迈出了重要一步。UnsafePointer 现在被设计为非空指针:默认的空构造函数和__bool__()方法已被废弃,且不再遵循DefaultableBoolabletrait。开发者需要用Optional[UnsafePointer[...]]来表达可空性。由于null地址被用作Optional的None niche,这种表达仍然是零开销且FFI安全的。

标准库集合也默认开启了边界检查。所有CPU上的集合(List、Span、InlineArray、String等)在越界访问时会直接报告用户调用点,而非静默崩溃。负索引也被彻底移除——x[-1]现在会触发编译期错误,必须改用x[len(x) - 1]。GPU 上的边界检查默认关闭以保证性能,但可通过-D ASSERT=all显式开启。

GPU编程:苹果/AMD/英伟达全平台覆盖

本次更新在GPU支持上的投入尤为突出。Apple Metal方面,print()首次在Apple GPU上可用,动态线程组内存external_memory[]()获得支持,Apple M5的MMA硬件矩阵乘加指令也通过apple_mma_load()等intrinsic暴露出来。AMD阵营新增了对MI250X加速卡的支持。英伟达方面则加入了对B300(sm_103a) 的识别与调度支持。

此外,GPU原语访问器(thread_idxblock_idxgrid_dim等)的返回类型从UInt统一迁移为Int,这是Mojo向「所有尺寸和偏移量使用Int」方向迈出的关键一步。CPU端的DeviceContext(api="cpu")现在也变成了流有序执行上下文,支持enqueue_cpu_function()enqueue_cpu_range(),为未来的NUMA感知CPU调度铺平了道路。

字符串与反射:Unicode字形簇与编译期类型细化

String和StringSlice新增了对UAX 字形簇(grapheme cluster) 的分段支持,能正确处理组合修饰符、emoji ZWJ序列、国旗emoji、韩语音节等多码点簇。新增的graphemes()count_graphemes()[grapheme=...]切片语法让文本处理更加精确。纯ASCII 文本的count_graphemes()有大约10倍的加速。

类型系统方面,编译器现在能基于where子句、comptime ifcomptime assert进行类型细化。只要编译期能证明某类型满足某trait,就可以直接调用其trait方法,无需再使用trait_downcast。反射API也整合为统一的reflect[T]()入口,取代了原先分散的struct_field_*get_type_name等自由函数。

工具链与生态

调试器体验大幅改善:Variant和Optional在LLDB中现在直接显示为Int(42)Some(value),而非原始内部结构;标量类型直接显示数值;UnsafePointer支持所有类型的正确显示。LSP响应速度通过缓存和延迟解析得到了优化,长会话中的代码补全从O(N²)降至摊还O(1)。Mojo包文件(.mojopkg)升级到格式v2,采用zstd压缩的MLIR字节码,显著减小包体积。

开源路线图:标准库已开源,编译器在路上

Modular在官网上明确表示,Mojo标准库已完全开源在GitHub,欢迎社区贡献。而编译器本体计划在2026年内开源。官方解释称,语言目前还很年轻,“一小群拥有共同愿景的工程师比社区驱动的方式推进得更快”。

Mojo的发展分为四个阶段:

  • Phase 0(已完成):核心解析器、内存类型、函数、结构体等语言基础。
  • Phase 1(进行中):高性能CPU+GPU编程,无缝扩展Python。
  • Phase 2:系统级应用编程,引入保证的内存安全模型。
  • Phase 3:动态面向对象编程,支持类、继承和untyped变量,最大化Python兼容性。

目前1.0.0b1的发布意味着Phase 1已初见成效。对于既想保持Python开发效率、又不愿在性能上妥协的AI开发者来说,Mojo终于从一个漂亮的Demo变成了一个可以真正尝试的选项。


参考来源

  1. Mojo官网: https://mojolang.org/
  2. GitHub: https://github.com/modular/modular
  3. Mojo v1.0.0b1 发布说明:https://mojolang.org/releases/v1.0.0b1/

  4. Mojo Roadmap: https://mojolang.org/docs/roadmap/

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
比当年日军还残忍!乌军储备大批女兵,俄军迎来好消息,普京出手

比当年日军还残忍!乌军储备大批女兵,俄军迎来好消息,普京出手

面包夹知识
2026-09-07 14:45:21
71岁演员寇振海18岁儿子寇家宝考上帝国理工学院

71岁演员寇振海18岁儿子寇家宝考上帝国理工学院

韩小娱
2026-09-08 06:43:32
迷乱过后我将重生

迷乱过后我将重生

青苹果sht
2026-09-08 05:52:09
赵勇辞职下课?总局局长点名,女排官宣,龚翔宇表态期待,目标曝光

赵勇辞职下课?总局局长点名,女排官宣,龚翔宇表态期待,目标曝光

舌尖小游记
2026-09-07 12:17:01
一个被很多人忽略的史诗时刻:特斯拉可能正在把电池工艺推向爆发

一个被很多人忽略的史诗时刻:特斯拉可能正在把电池工艺推向爆发

旧史新谭
2026-09-07 18:40:37
中国女篮71-51意大利!球员评分5人优秀,最佳球员不是张子宇韩旭

中国女篮71-51意大利!球员评分5人优秀,最佳球员不是张子宇韩旭

顺静自然
2026-09-08 08:48:14
湖南男子谎称给表姐介绍对象,转身将自己包装成“高富帅”与其交友,骗取表姐1.5万元;警方:丁某(男,28岁)已被刑拘

湖南男子谎称给表姐介绍对象,转身将自己包装成“高富帅”与其交友,骗取表姐1.5万元;警方:丁某(男,28岁)已被刑拘

大风新闻
2026-09-08 11:13:03
给胖东来供货十七年的牟强说,这里一边是天堂,一边是地狱。天堂是账期短,货款七天左右就能到账,地狱则是...

给胖东来供货十七年的牟强说,这里一边是天堂,一边是地狱。天堂是账期短,货款七天左右就能到账,地狱则是...

背包旅行
2026-09-07 18:50:04
美国法庭炸锅了!9月2号,被美军抓捕拘押在美国的马杜罗,他的律师团队抛出了一个惊人的逻辑死局,直接把美国法官都给搞懵了。

美国法庭炸锅了!9月2号,被美军抓捕拘押在美国的马杜罗,他的律师团队抛出了一个惊人的逻辑死局,直接把美国法官都给搞懵了。

回京历史梦
2026-09-06 20:35:03
“92号汽油,6元/升?”

“92号汽油,6元/升?”

网络易不易
2026-09-08 11:00:50
都是自研芯片,为什么麒麟9050和玄戒O3的差距,越追反而越大了

都是自研芯片,为什么麒麟9050和玄戒O3的差距,越追反而越大了

春雨说科技
2026-09-07 18:34:22
多名院士呼吁快停止食用,吃一口等于14斤塑料袋,女子因肾衰走了

多名院士呼吁快停止食用,吃一口等于14斤塑料袋,女子因肾衰走了

任医生聊健康
2026-06-18 22:00:09
金晨正式回应出国生子!

金晨正式回应出国生子!

大爱三湘
2026-09-08 00:01:27
全新奔驰GLE:375马力3.0T+612马力4.0T V8,豪华与性能双巅峰

全新奔驰GLE:375马力3.0T+612马力4.0T V8,豪华与性能双巅峰

小怪吃美食
2026-09-06 13:46:56
班主任不会告诉你:分班不是随机的,其实是按这几个标准分的

班主任不会告诉你:分班不是随机的,其实是按这几个标准分的

侃故事的阿庆
2026-09-07 06:12:56
房子遭人强拆,因反抗坐3年牢!出狱后扬言:不赢官司就杀人

房子遭人强拆,因反抗坐3年牢!出狱后扬言:不赢官司就杀人

就一点
2026-09-07 16:12:17
连续4轮打脸美网官方!郑钦文:老天让我吃了很多苦 现在回报我了

连续4轮打脸美网官方!郑钦文:老天让我吃了很多苦 现在回报我了

风过乡
2026-09-08 07:19:41
甘肃榆中染色莴笋刷屏:13个仓库一半在泡药水,你挑的“新鲜菜”可能是染出来的?

甘肃榆中染色莴笋刷屏:13个仓库一半在泡药水,你挑的“新鲜菜”可能是染出来的?

一盅情怀
2026-09-07 11:44:31
废品站最近疯了!这5种旧货身价暴涨,家里有的千万别手欠扔掉

废品站最近疯了!这5种旧货身价暴涨,家里有的千万别手欠扔掉

朗威谈星座
2026-09-08 04:01:03
特斯拉无稀土电机10秒造一台!每台省1000美元,稀土用量归零?

特斯拉无稀土电机10秒造一台!每台省1000美元,稀土用量归零?

麓谷隐士
2026-09-07 00:10:03
2026-09-08 21:08:50
开源中国 incentive-icons
开源中国
每天为开发者推送最新技术资讯
7840文章数 34559关注度
往期回顾 全部

科技要闻

小米再次背水一战

头条要闻

美国中期选举临近 纽森呼吁民主党:硬气起来

头条要闻

美国中期选举临近 纽森呼吁民主党:硬气起来

体育要闻

韩旭:我一定会再次走出去

娱乐要闻

郭德纲被处罚,郭麒麟被曝恋情瓜

财经要闻

智谱六连跌失守1000大关,发生了什么?

汽车要闻

领克20 领克的纯电小钢炮这次更运动了

态度原创

游戏
家居
艺术
旅游
军事航空

肉腿之后,日本人又将XP卷向了大胃袋

家居要闻

2026建博会(广州) 公装联探展交流活动

艺术要闻

他是康熙的书法老师,被誉为“超越赵孟頫”,这字写得太漂亮了!

旅游要闻

赓续长征精神 奋进复兴征程丨江西于都:长征出发地的红色文旅新体验

军事要闻

胡塞武装用自行生产的导弹袭击沙特军车

无障碍浏览 进入关怀版