Ruby 3将于今年圣诞节发布,设计者松本行弘分享Ruby 3的部分细节

ruby 编程语言的创建者和首席设计师 yukihiro matsumoto(松本行弘)近期在某演讲中分享了 ruby 3 的一些情况。
原本 ruby 3 计划在东京奥运会前夜发布,但奥运会被推迟到 2021 年,所以一些核心开发者想知道 ruby 3 是否也会顺理成章地推迟一年发布。讨论后最终还是决定今年发布,并且现在定于 12 月 25 日。
“我们决定今年发布 ruby 3,因为作为开源社区,我们必须前进。我们必须继续前进,开源社区通常不能停止发展,否则就是等死……”松本表示,过去四五年一直在谈论 ruby 3 的未来,但是一直也没见发布,不过今年是真的会在 12 月 25 日圣诞节推出 ruby 3。在圣诞节发布 ruby 升级是社区的一项传统。
接着松本分享了所有编程语言面临的困境:升级与不升级的矛盾。在应用运行稳定的基础上,如果大改语言,那么就会带来艰难升级的危险,python、php 与 ecmascript 都是很好的例子,它们的社区花了许多年才能接受这些变化。“使用 python 3,社区花了十多年的时间;php 6 甚至被取消了,直接从 php 5 开始创建 php7;emcascript 4 也被取消了。”
松本解释说,如果不做出改变,人们可能会离开社区,而如果升级到更高版本则会带来太多痛苦,他们也可能会离开社区。这种进退两难的情况可能是每个编程语言面临的困境,不过松本觉得这种时候更应该向前:“因此,正如我所说,设计一种语言很困难,但是无论如何我们都必须向前迈进,以创造未来。”
同时,在这种情况下,保持兼容性是很重要的。松本为 ruby 3 明确了三个具体的目标:快速、并发与准确。“使 ruby 更快,并使 ruby 程序员更高效”。
为了使 ruby 更快,开发团队将从改进其即时编译器(jit)开始;为了实现并发,将避免使用其它语言的解决方案,诸如 ecsmascript 7 添加了带有关键字 async 和 await 的控制机制。ruby 3 会改为实现其期待已久的异步 i/o fiber,作为控制异步线程的更好的方法。fiber 之间的上下文切换速度很快,因此性能会更高。
让 ruby 更加准确的方法是优化早期检查错误,主要靠类型分析器实现,它将生成 ruby 签名,ruby 3 将为其核心库提供类型签名,可用于类型检查以及增强将来的 ide。
松本还介绍了 ruby 3 将带来的三个新语法特性。第一个是便捷的模式匹配语法:
第二个新特性允许将值分配给等号右侧的变量,“这在某些情况下非常方便。”
第三个新特性是为块参数编号:
不过松本也解释,ruby 3 语法上不会有太大变化,稳定性很重要,他们将专注于改进 ruby 的现有支持工具,例如用于语言服务器协议的 solargraph、用于静态类型检查的 sorbet,以及 rubocop 的代码 linter。
最后松本提及目前他正在考虑的“较小的 ruby”这一疯狂的想法,“我正在考虑使用较小的 ruby 子集,该子集更简单并且更严格,并希望更快或更容易进行优化。”这一子集是向下兼容的,也就是说,它可以运行在所有当前版本的 ruby 中。
责编ajx

紫光展锐荣评“5G技术创新力企业”,5G赋能千行百业
陶瓷气体放电管原理_陶瓷气体放电管符号_陶瓷气体放电管参数
上海大学微电子学院院长、中国MEMS传感器专家古元冬专访
怎样将模式发生器与Analog Discovery 2结合使用
高效率100mA同步降压转换器,具有4V至150V的宽输入范围
Ruby 3将于今年圣诞节发布,设计者松本行弘分享Ruby 3的部分细节
腾讯云打造MySQL 8.0全新引擎,进一步加速客户产业升级
卡萨帝感恩月已启动,感恩用户15年的陪伴
MLD协议测试—网络测试仪实操
数字电桥与数字万用表的区别有哪些呢?
使用推理服务器加速大型Transformer模型的推理
苹果A12:GPU性能比骁龙845高一倍!
半导体并购大戏开场,半导体整合期逐渐逼近
如何利用PWM调光原理实现三基色灯的各种闪亮效果
家用防盗报警器哪种好
CAN和CANFD协议简介(上)
示波器无源高阻探头如何正确接线
目前的儿童空调市场主要呈现以下四大特征
9家LED产业链上市公司的期中考试“成绩单”
利用二极管电路实现双线圈锁存继电器的测试