跳到主要内容

weekly 2023-12-04

· 阅读需 2 分钟

MoonBit更新

1.支持在浏览器上进行源码调试

2. 优化对于只有常量构造器枚举数据类型的布局

例如,对于以下代码,优化后会将AB直接使用整数01表示,不再需要装箱与拆箱操作。

enum T {
A
B
}

fn init {
let t = T::A
match t {
A => println(0)
B => println(1)
}
}

3. 引用类型在函数边界改为了 non-nullable

引用类型在函数边界改为了 non-nullable,这有助于后续为部分基础类型(比如Array,String 等)提供稳定的ABI

构建系统

移除 moon.pkg.json 中的 name 字段,不再以 "name": "main" 识别入口,而是显式地使用 "is_main": true来识别。

社区

我们新启动了一个GitHub项目,专注于MoonBit语法和功能的改进。链接是:https://github.com/moonbitlang/moonbit-RFCs

RFCs|690x434

在这里,我们会分享关于MoonBit语法修改与功能修改的想法,并邀请大家共同参与讨论,探索每个提案的可行性。同时,我们也欢迎任何有对MoonBit感兴趣的朋友们可以在这里提交你的提案。我们将共同探讨每一项提案的可行性,期待你的参与~