Ruby 创始人 Matz 最近提交的 commit 显示,他计划今年跳过 2.8.0 直接发布 3.0.0 版本。
Matz 没有解释做出这个决定的原因,两年前他曾透露 Ruby 3 将会朝三个方向进行推动,即快速、分布式可伸缩,以及精确分析,最终有望实现 3 倍提速。
Ruby 3 会在每年的版本发布中添加一些新功能,当达到制定的目标时,就是 Ruby 3,从而避免带来不兼容的更改。
从 Hacker News 对这个话题的讨论来看,有人指出 Ruby 3 有望引入新的并发原语(concurrency primitives),这些原语可以规避全局解释器锁(guilds / isolates),并为 stdlib 引入类型定义,以提供可选的类型支持,这将会是 Ruby 的重要版本。
关于类型参数方面,Ruby 3 确实有添加“静态类型”的计划,去年知名 Ruby 开发者 Paul Tarjan 曾发表演讲表示正与 Ruby 核心团队合作开发并为 Ruby 添加“静态类型”特性,“静态类型”将会是 Ruby 3 stdlib 源码的一部分。
Ruby 目前最新的稳定版是 2.7.1,从 2.6.0 引入 JIT,到 2.7.0 引入模式匹配、紧凑 GC 和改进 REPL,也许 Ruby 2.8.0 加入的新特性足够让其成为一个更大的版本——3.0.0。