凹语言亮相第三届软件创新发展大会
- 时间:2025-06-18
- 撰稿:凹语言开发组
- 转载请注明原文链接:https://wa-lang.org/smalltalk/st0081.html
2025年6月13日,第三届软件创新发展大会在武汉光谷盛大召开,凹语言亮相厂商展台,并在企业开源体系建设论坛发表主旨演讲。 经过精心准备,凹语言在厂商展台展演示了:在线游乐场,使用凹语言开发的单片机应用、NES模拟器、三维高斯泼溅渲染程序,以及首个种子用户DoraSSR推出的、用凹语言作为逻辑控制脚本语言的游戏开发套件:
凹语言展台全面展示了项目取得的最新成果,获得了多方视察及关注:
在企业开源体系建设论坛,项目联合发起人丁尔男发表主旨演讲,介绍了凹语言的发展历程、社区建设与运营情况,并着重介绍了为改善开源公平性而设计的基于贡献点的后回馈社区治理模式,以及开创性的凹语言贡献者回馈活动,以下是主旨分享回放:
分享的B站链接:https://www.bilibili.com/video/BV1vzM8z2E8S/
分享内容文字稿:
各位领导、专家、企业家同仁,我叫是凹语言项目的联合发起人,很荣幸能够参加这次软创会,向大家汇报凹语言项目的发展历程、社区运营工作的开展情况,以及这个我个人对于开源公平性的一些思考。 凹语言是一门针对高性能网页应用设计的通用的编程语言,项目的维护单位是武汉凹语言科技有限公司,注册地位于武汉市工科院科技园孵化器,虽然说目前我们的这个项目主体是公司,但是凹语言是基于社区开源的方式发展起来的,并且今后也将继续保持这种社区治理的模式。
2019年前后,出现了一门叫做叫WebAssembly的技术,我们是国内的首批WebAssembly技术的使用者和推广者,但是在当时可以用来开发WASM程序的这些编程语言多多少少都有一些缺陷,所以就动了自己做一门这个语言的这么一个念头;因为我们都是做行业软件出身的,所以在2020年,立了flag“不做玩 具车”,并且确定了这个语言的一些基本的一些特征;2021年,我们确定了“最小化外部依赖”的技术路线,不使用LLVM,而是选择自制编译器的后端,在2022年,我们开始了正式的开源开发,当年实现了图灵完备,并且上线了在线编译运行环境playground;2023年,项目发展进入了快车道,先后支持了复合类型、接口等大特性,并且在8月份的时候,发布了手册和最小可用产品,紧接着上线了第一阶段的FFI和程序简易脚手架,支持了胶水代码的自动生成,然后我们开发了第一个复杂的应用——NES模拟器,这个模拟器,同样算法如果用Python编写的话,它的性能只有实机的1%,作为对比,凹语言版本的性能跟实机是一致的;2024年,我们陆续补充了重载、map、defer等一系列特性,完成所有语法特性的支持;今年年初,我们收获到了第一个种子用户——DoraSSR,这是一个开放原子基金会旗下的开源游戏引擎,它内置了我们的编译器,把凹语言作为控制游戏逻辑的脚本语言来使用。
未来的一年,我们计划做以下事情:在工具链的方向,提供基于LSP的代码补全,把易用性提升到主流水平;通过结构化控制流和RC的优化,在未来的一年,执行性能有望得到很大幅的提升;在生态建设的方向,我们将开始在生产环境中进行工程化试用。
我们在社区治理时,遵循两条基本原则:第一是利他主义,第二是希望与社区贡献者“共建共荣”,社区制度设计、人员组织、活动推进都是以这两条理念为指导。很多草根项目的主要推动力,来自于在所有贡献者中占比非常小的核心团队,我们这个项目也是一样的情况,凹语言临时决策委员会的章程,约定了我们核心团队的人事任免、议事方法以及决策流程;并且我们在刚开源的时候就部署了一个完整的贡献者协议;此外还有一套比较特殊的贡献点机制,我们会每隔半年的时间,向项目的参与者分发贡献点,这个图里面是现在的贡献点分布情况,从这里,我们大致可以对每个人付出的劳动进行一个量化和记录。曾经有人调侃说,你们这么小的一个草根开源项目搞得这么官僚,其实回过头来看,正是这些制度,保证了凹语言项目能够持续发展到今天。目前的人员组织的情况是这样:我们总共有20多位贡献者,临委会有三个人,其中扈梦明就是我们从社区里吸取来的。
从2022年开始,我们陆续参加了一些社区活动,也获得了很多鼓励,特别值得一提的是在今年年初的时候,凹语言入选了武汉市优秀开源软件项目名录,获得了30万元的专项资金支持,收到这个奖金以后,我们在5月4号青年节,启动了第一轮凹语言贡献者回馈活动,按照每3个贡献点1块钱的比例,向所有的参与者发放奖金,虽然说之前部署了贡献者协议,贡献者协议免除了项目方对于社区的法律义务,但是我们觉得从道义上来说,仍然有责任,对社区的贡献者进行回馈,钱虽然不多,总共这次分出去了10万多一点,每个人分到的钱其实没有很多,但是大家的反馈都是非常正面的,从我们收到的这些反馈信息来看,这次活动很可能开创了一个:不以雇佣或者悬赏形式、而是以权益凭证的形式向社区贡献者给予现金回馈的先例。
在活动这块,我们还发起成立了编程语言开放社区。编程语言是软件产业的工业母机,在整个产业链里面处于根节点的位置,但是国内在这一块,其实一直是比较弱的,我们联合了几个语言类的项目,在2023年发起成立了编程语言开放社区(PLOC),希望能够为编程语言,尤其是尤其是一些小规模的项目,提供一个信息交流、资源共享和对外宣传的平台。PLOC连续两年发布了编程语言蓝皮书,这是一份国内的编程语言的项目黄页,其中有蚂蚁的KCL、网易的NASL这样的一些大厂的项目,也有智锐、洛书这样的个人项目,最近这段时间发展速度非常快的AI原生语言Moonbit月兔、标记型语言HVML等也在其中,蓝皮书的编撰工作也是使用开源模式展开的,它是由项目方自主申报,我们准备了一些蓝皮书的纸质版在市集里面的摊位,大家有兴趣的话可以去可以去领取。
最后我想说一些关于开源生态发展和公平性的一些想法。其实长久以来,开源贡献者,尤其是那些不以企业员工身份去参与开源社区建设的草根贡献者,他们很难通过自己付出的无差别的人类劳动来获取有形的、恰当的回报;并且更雪上加霜的是,在这种客观情况之下,存在一些声音:甚至要求我们这些开源贡献者在完全放弃自己的权益的同时,持续的用爱发电,这种单向的、苛刻的道德要求,我觉得有悖于最朴素的公平正义,也不利于开源社区的发展。这些问题不会因为我们大家避而不谈,它自己就解决掉了,我们每一个开源贡献者,其实都有权利,也有义务去促进社区的公平化。刚才讲的凹语言贡献者回馈计划,就是我们在自己能力范围之内的一次具体的尝试,当然,这个计划能够得以实施,有三个前提:首先项目方必须拥有完整合规的产权,因为我们知道在完全民主化的社区形成决策是非常困难的一件事情;其次社区必须提前对权益方案形成共识,并且在项目的发展过程里得到贯彻实施,否则的话如果没有这一套东西,你收到钱了突然说我要分,你这个分配方案怎么形成又会形成很大的争议,权益分配的方案,必须在很早的时候,最好在项目一开始就获得共识,这样大家知道你的方案,还愿意来贡献,这个共识在执行的过程里就会得到不断的增强;第三点当然也是最重要的一点,你得有钱分,所以我们非常感谢武汉市经信局,这次的专项资金真的给了我们进行这次实践的机会。通过这种形式把这笔钱花掉,我们觉得是能够最大化的发挥这笔奖金作用的途径。
从我们自己的体感上来说,2024年以来,政策、资源向开原生态的倾斜越来越明显,所以我觉得现在其实就是有史以来中国开源社区,尤其是草根开源社区最好的时代!