10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

迅速登顶 HackerNews!这款深圳团队开发的编程语言月兔(Moonbit)将重塑 WebAssembly 的未来生态?

  • 2023-08-25
    北京
  • 本文字数:3044 字

    阅读完需:约 10 分钟

迅速登顶HackerNews!这款深圳团队开发的编程语言月兔(Moonbit)将重塑WebAssembly的未来生态?

知乎上有一个热门问题是:为什么中国出了这么多厉害的互联网公司,但没有自己设计过编程语言?评论区的用户对此众说纷纭,大部分答主的回答并不乐观,对中国编程语言的未来并不看好。


然而近日,事情有了微妙的变化。一个中国团队开发的编程语言在Hacker News亮相。Hacker News,简称 HN,是由《黑客与画家》作者 Paul Graham 与 Y Combinator 联合创办的新闻社区,尽管其界面相对朴素,但社区的用户和评论质量很高。想要在首页上获得一席之地,需要通过社区的用户投票和联合讨论来决定,客观和真实的评价也使得很多知名项目在早期阶段都通过 HN 传播,例如 Dropbox,Rust,Airbnb 等,HN 在推广早期项目和讨论高质量内容方面具有重要地位。


不到一天时间,这款深圳团队开发的,名为“月兔(Moonbit)”(以下简称:Moonbit)的编程语言登上了Hacker News的头版头条,在 IT 工业界引发了热议。



国际知名的 Scala 和函数式编程专家 John A De Goes 在试用 Moonbit 后表示:Moonbit 看起来非常适合在 @GolemCloud(WasmCon 2023 的金牌赞助商、领先的 WebAssembly Paas 平台)上构建应用,并表示有兴趣尝试一下。

著名前端框架工具 Vue.js 作者尤雨溪、WebAssembly 生态知名公司 Wasmedge 在试用后在 Twitter(X)上转发了公告。

全球各大技术爱好者纷纷在评论区留言和评价,部分开发者在试用后对其编译速度之快感到难以置信。Moonbit 通过自动内存管理使编程更加简便,从而与 Rust 区分开来。“我已经可以想象下一个‘100 秒’视频了” ,“以这个速度,可能只需要 500 毫秒(就可以完成编译)”。

用于 Chrome 浏览器、LLVM 以及 Android 等大型项目的构建系统Ninja的作者 Evan Martin 在公告发布后也在评论区表示对 Moonbit 的期待:

同时,已经有技术用户和语言爱好者结合自己的已有项目,探索与 Moonbit 结合开发的可能。

围绕着项目本身,目前大家普遍对于月兔(Moonbit)标准库、构建系统的发展表示期待。

在了解 Moonbit 后,来自知名公司 GreenLabs 的工程师 Woonki 尝试使用 Moonbit 重新编写著名的生命游戏,Moonbit 出色的编译速度让他深感惊叹,因此他在 Twitter 上发表感想,表示对这门语言的未来充满了激动和期待。

00:00 / 00:00
    1.0x
    • 3.0x
    • 2.5x
    • 2.0x
    • 1.5x
    • 1.25x
    • 1.0x
    • 0.75x
    • 0.5x
    网页全屏
    全屏
    00:00


    那么,备受瞩目的 Moonbit 到底是什么?它为什么能在这么短的时间内获得大家的关注?接下来让我们一起深入了解这门语言的背景与特点。

    月兔(Moonbit) 到底是什么?

    Moonbit:编译速度快、Wasm 体积小、用户友好度高的 Webassembly 语言


    Moonbit是一套专为云计算和边缘计算设计的端到端解决方案。它不仅包括了通用程序语言设计,还涵盖了编译器、构建系统、集成开发环境(IDE)、部署工具等各个方面。这使得 Moonbit 能够实现高度垂直整合,从而为用户提供更出色的开发体验和性能。

     

    Moonbit 是由 IDEA 研究院基础软件中心负责人张宏波及其经验丰富的团队打造而成,仅用不到 11 个月的时间完成语言设计、IDE、编译器和构建系统。IDEA 研究院对于底层创新的重视与支持,帮助团队吸引了多位在语言设计和开发领域拥有超过十年专业经验的成员。值得一提的是,张宏波不仅为多种编程语言做出了贡献,包括 OCaml、ReScript(原 ReasonML/BuckleScript)和 Flow,还是 Rescript 语言工具链几乎所有关键组件的作者,包括高速编译器、标准库以及构建系统等。

     

    那么,Moonbit 究竟有哪些功能值得开发者关注呢?主要包括以下三个方面:

     

    首先是编译速度快,Moonbit 注重全局速度,采用多级中间表示(IR)的整体程序优化方法,优化内存布局以减少缓存失效,并为数据和控制流分析提供卓越的上下文。同时,Moonbit 在构建性能方面也表现出色,通过工具链的垂直整合,IDE 性能得到了极大的提升,这对于开发人员的体验至关重要。根据测试,Moonbit 在冷启动环境无缓存模式下只需要不到 7s 就能检测到 4000 个 package。

    00:00 / 00:00
      1.0x
      • 3.0x
      • 2.5x
      • 2.0x
      • 1.5x
      • 1.25x
      • 1.0x
      • 0.75x
      • 0.5x
      网页全屏
      全屏
      00:00


      第二是 Wasm 输出体积小,Moonbit 通过有效消除死代码,省略了妨碍此分析的语言特性,显著减小了最终代码的大小。据 GitHub 上可用的基准测试结果,Moonbit 输出的 Wasm 体积最小,仅约 253 字节。


      第三是用户友好度高,Moonbit 通过自动内存来简化编程、避开了指针或左值等危险元素。此外,Moonbit 还提供了广泛的工具集,包括管理器、编译器、集成开发环境(IDE)以及一个无需容器支持、具备离线功能的云 IDE。其中,云 IDE 采用了与传统的云 IDE 不同的架构,可在浏览器离线开发,用户输入能快速反馈,不再依赖网络宽带。

      00:00 / 00:00
        1.0x
        • 3.0x
        • 2.5x
        • 2.0x
        • 1.5x
        • 1.25x
        • 1.0x
        • 0.75x
        • 0.5x
        网页全屏
        全屏
        00:00


        这里放上 Moonbit 的试用地址,大家感兴趣的话可以玩一下。

         

        试用地址:https://try.moonbitlang.cn

        月兔(Moonbit):重塑 WebAssembly 的未来生态

         

        在 Hackernews 底部的论坛区,针对 Moonbit 的亮相,有人问起张宏波:「这是否意味着你今后不再主导 Rescript 的工作,渐而把全部重心放在 Moonbit 的建设上?」

         

        张宏波表示:除了 Moonbit 在设计上学习 Go 语言和 Rust 语言优点的后来者优势外,从设计之初就考虑 IDE,编译器和构建系统上的垂直整合,利于日后整个程序语言的生态发展和稳定,也从侧面回应了 Moonbit 的设计初心——在 Wasm 生态缺乏优质供给端的今天,如果能量身为用户和消费端打造一门与标准高度适配的语言,这在整个程序语言界可以形成后发优势。

        作为计算机系统软件运行和网络环境的基础,基础软件扮演着至关重要的角色。尽管过去几十年中计算机性能取得了巨大突破,但令人遗憾的是,软件体验并没有同步提升,软件性能的潜力仍然未能充分挖掘。在这个背景下,2017 年推出的新一代标准指令集 WebAssembly 因其高效、轻量、安全等特性,引起了广泛的关注。

         

        然而,目前在 WebAssembly 平台上,主流的开发语言仍然是一些对程序员门槛相对较高的底层编程语言,如 C++和 Rust。同时,一些应用层的语言,如 Go 语言,虽然在 WebAssembly 上运行,但其生成的代码体积巨大,无法充分发挥 WebAssembly 平台的优势。因此,在 WebAssembly 生态系统中,尽管已经有数十种开源的消费端运行时,但高质量供给端的匮乏是当前面临的最大挑战。


        为了填补这一生态缺失,Moonbit 团队专注于WebAssembly(简称Wasm),更好地支持这一技术,争取在这个领域取得后发优势。正如张宏波在回答知乎热门问题中所强调的,“做自己的语言是个很需要有情怀的事情,困难很多,但是长远意义上是一个国家在基础软件问题上的话语权的问题”。

         

        在这一愿景的推动下,Moonbit 诞生了,为编程软件的未来开辟新的道路。 

        月兔(Moonbit)的未来之路

         

        在 Moonbit 的未来之路上,有许多令人兴奋的计划和发展方向。

         

        据了解,除了给用户提供现有的在线 IDE 和 VS Code 扩展插件,Moonbit 正在利用 LLM 大语言模型开发 Moonbit GPT,以辅助程序员代码准确性与提高开发效率,Moonbit 将在 2024 年 Q2 达到 Beta 状态,在稳定的同时,具备与 Wasm 宿主进行交互的外部函数接口(FFI)。在未来的战略计划中,团队会考虑将 Wasm 2.0 的 Wasm GC 集成到 Moonbit 并且开发 Wasm 1.0 GC。

         

        关于未来的长期计划,张宏波也在 Hackernews 的讨论区做出了回答,Moonbit将会是他退休前的最后一个项目,Moonbit 团队有一个非常强烈的决心与长期愿景,将继续推动月兔(Moonbit)的发展。

        参考链接:

        [1]https://www.zhihu.com/question/359906573/answer/1709942996

        [2]Hacker News: https://news.ycombinator.com/item?id=37174619

        [3] Ninja:https://en.wikipedia.org/wiki/Ninja_(build_system)

        [4]月兔(Moonbit)平台背景 &应用场景介绍:https://mp.weixin.qq.com/s/HcpB0YiU64J2duPikrr-cw

        [5]月兔(Moonbit): the fast, compact & user friendly language for WebAssembly:https://zh.moonbitlang.com/blog/first-announce/

        [6]编程语言月兔(Moonbit)开放内测:https://mp.weixin.qq.com/s/6m7xd5pUR20bGmTCtcQEFw

         

        2023-08-25 09:4510627
        用户头像
        赵钰莹 极客邦科技 总编辑

        发布了 897 篇内容, 共 691.2 次阅读, 收获喜欢 2699 次。

        关注

        评论 2 条评论

        发布
        用户头像
        看了一下 github 仓库,伪装的,这是个大计划啊。
        2024-03-13 17:26 · 广东
        回复
        用户头像
        能举几个例子吗?什么场景可以用到

        Moonbit是一套专为云计算和边缘计算设计的端到端解决方案。

        2023-09-03 13:15 · 天津
        回复
        没有更多了
        发现更多内容

        人工智能|RAG 检索增强生成

        霍格沃兹测试开发学社

        中国AI长卷(二):框架立基

        脑极体

        AI

        企业选择IT外包服务的好处

        Ogcloud

        IT外包 IT外包公司 IT外包服务 IT外包企业 IT外包服务商

        远程控制软件怎么选?向日葵功能齐全还不限制免费使用

        编程猫

        系统整容纪:慢SQL之独家秘籍,离不可替代型人才更近一步

        京东科技开发者

        人工智能丨RAG 检索增强生成

        测试人

        软件测试

        京东商品描述API:返回值的详细解读

        技术冰糖葫芦

        API Explorer API 编排 api 货币化 API 文档

        IT外包服务对中小型企业的重要性

        Ogcloud

        IT外包 IT外包公司 IT外包服务 IT外包企业 IT外包服务商

        程序员必备开发神器:领取云主机,零码创建专属AI Agent

        华为云开发者联盟

        人工智能 云主机 大模型 华为云开发者联盟 企业号2024年7月PK榜

        fasterWhisper和MoneyPrinterPlus无缝集成

        程序那些事

        工具 AIGC

        数业智能心大陆,你的专属AI心理专家

        心大陆多智能体

        智能体 AI大模型 心理健康 数字心理

        中小制造业工厂要不要上MES系统

        万界星空科技

        制造业 生产管理系统 mes 云mes 万界星空科技

        为何共享集群的高可用能力被频频称赞,它的机制有何不同?

        YashanDB

        yashandb 崖山数据库 崖山DB

        异构智算,打赢智算时代「牧野之战」

        脑极体

        AI

        以小见大-B端图标设计沉思

        inBuilder低代码平台

        设计 图标制作

        Mac应用快速启动器:Alfred 5 for Mac 激活版

        你的猪会飞吗

        mac软件下载 Mac破解软件

        【IT小知识】什么是工单?什么是工单中心?

        行云管家

        堡垒机 工单 IT 运维 工单中心

        医院采购堡垒机厂商重点推荐-行云管家

        行云管家

        网络安全 医院 堡垒机 等保合规

        论文图谱当如是:Awesome-Graphs用200篇图系统论文打个样

        TuGraphAnalytics

        【漏洞复现】Nodebb 被爆未授权拒绝服务攻击

        我再BUG界嘎嘎乱杀

        网络安全 漏洞 网安 漏洞复现

        AI写PPT的软件有哪些?这5款备受推崇的AIPPT工具值得推荐!

        彭宏豪95

        人工智能 PPT 在线白板 办公软件 AI生成PPT

        京东百万级调度系统(Buffalo)架构解密

        京东科技开发者

        【论文解读】让我们逐步验证

        合合技术团队

        #科技 LLM模型

        【实战分享】从新手到专家,六大神器加速你的代码人生

        敏捷调度TASKCTL

        vscode jenkins Postman TASKCTL #docker

        巧用 API 接口,尽览京东商品详情

        Noah

        重磅 - Github上免费大屏来啦,教你快速搭建

        JEECG低代码

        报表工具 大屏设计器 数据库可视化 仪表盘设计器

        人工智能|RAG 检索增强生成

        测吧(北京)科技有限公司

        探索网络安全:浅析文件上传漏洞

        我再BUG界嘎嘎乱杀

        网络安全 漏洞 文件上传

        【YashanDB知识库】数据库使用shutdown immediate无响应导致coredump

        YashanDB

        yashandb 崖山数据库 崖山DB

        迅速登顶HackerNews!这款深圳团队开发的编程语言月兔(Moonbit)将重塑WebAssembly的未来生态?_编程语言_静纯_InfoQ精选文章