中国开发者团队创建的编程语言 MoonBit ( 月兔 )

2023-09-07 11:48 栏目: 行业动态 查看()

8 月 26 日「源创会」北京站,聊聊 AI 大模型与底层技术 

由中国开发者团队创建的编程语言 MoonBit(月兔)最近登上了 Hacker News 头条

图1.png

根据介绍MoonBit (月兔)专为云计算、边缘计算设计,是一个用于云计算和边缘计算的 WebAssembly 端到端编程语言工具链,集开发、编译、测试、部署于一体 —— 涵盖了通用程序语言设计、编译器、构建系统、IDE、部署工具等。在语言设计、编译器和构建系统上实现高度的垂直整合,为用户提供更佳的开发体验和性能,致力打造未来世界级的基础软件生态。

图2.png

主要优势

· 生成与现有解决方案相比显著更小的 WASM 文件

· 更高的运行时性能

· 先进的编译时性能

· 简单但实用的数据导向语言设计

图3.png

图4.png

图5.png

图6.png

相比于主流语言,Moonbit 具备后发优势,如基于 Webassembly 设计同时支持多后端,生成代码的性能高、体积小。Moonbit 还具备高效的增量式代码解析和类型检查;多范式编程,函数式内核 + OOP 风格;多层次的中间代码优化;低延迟的智能化 IDE 等特性。未来,Moonbit 计划新增 Trait system,高效稳健的内存管理和垃圾回收机制等机制,完善标准库 + 生态,提供更好的 FFI 调用机制,结合 AIGC 技术等。

MoonBit(月兔)由粤港澳大湾区数字经济研究院(IDEA 研究院)基础软件中心负责人张宏波领导的团队开发,目标是打造下一代智能开发平台。

张宏波本人不仅为多种编程语言做出了贡献,包括 OCaml、ReScript(原 ReasonML/BuckleScript)和 Flow,还曾是 Rescript 语言工具链几乎所有关键组件的作者,包括高速编译器、标准库以及构建系统等。

MoonBit 目前处于 Pre-alpha 阶段,属于实验性质。

MoonBit 负责人张宏波称,MoonBit 编译器预计在 2024 年第二季度末达到 Beta 状态,到时将会正式公开。




示例代码

用三种编程语言(MoonBit、Go 和 Rust)实现的 fib 函数:

// Moonbitfunc fib(num : Int) -> Int {

  fn aux(n, acc1, acc2) {

    match n {

      0 => acc1

      1 => acc2

      _ => aux(n - 1, acc2, acc1 + acc2)

    }

  }

 

  aux(num, 0, 1)}

// Gofunc fib(n int) int {

  var aux func(n, acc1, acc2 int) int

  aux = func(n, acc1, acc2 int) int {

    switch n {

    case 0:

      return acc1

    case 1:

      return acc2

    default:

      return aux(n-1, acc2, acc1 + acc2)

    }

  }

  return aux(n, 0, 1)

}

// Rustfn fib(n: i32) -> i32 {

  fn aux(n: i32, acc1: i32, acc2: i32) -> i32 {

    match n {

      0 => acc1,

      1 => acc2,

      _ => aux(n - 1, acc2, acc1 + acc2),

    }

  }

  aux(n, 0, 1)

}

基准测试结果:

图7.png

https://moonbitlang.github.io/moonbit-docs/benchmark/fibonacci/


扫二维码与商务沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流

郑重申明:小伙伴科技以外的任何非授权单位或个人,不得使用我公司案例作为工作成功展示!