QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

Ruby VM 近况:Ruby 1.9.1 第一预览版发布,Rubinius 向 C++ VM 迁移

  • 2008-10-30
  • 本文字数:743 字

    阅读完需:约 2 分钟

Ruby 1.9.1 的第一预览版已经发布(下载站点)。在发布记录写到:

28 Oct, 2008: Ruby 1.9.1-preview1
* 语言特性基本上已经冻结。
* 然而大部分的标准库需要为多语言化(multilingualization,简称 m17n)做出更多的修改。

发布记录还写到,2008 年 12 月 25 日将发布 RC 版本,接下来 2009 年 1 月 25 日将发布最终的 1.9.1。

InfoQ曾经报道过 1.9.1 的修改。其中一项最近的语言修改涉及到了 lambda。一个由 Eric Mahunin 提交的补丁现在可以允允许 lambda 的参数带有默认值。在 Changelog 中写到:

parse.y (f_block_optarg): 允许默认的 block 参数,其取值将作为初值。此补丁由 Eric Mahurin 提交 [ruby-core:16880]。

另外一个广为争议的议题是“stabby lambda”,例如,用“->”来表示lambda,这是 1.9 引入的。尽管有些人认为应该将其移除,它还是保留在语言当中。

Dave Thomas(PragDave)提到,斧头书的第三版已经完成(覆盖了 1.9.x),将在最终的 1.9.1 发布前后发行。

Rubinius 项目的开发达到了另一个里程碑。Rubinius 的创始人 Evan Phoenix 说道

我非常高兴地宣布,我们的 C++ 分支已经足够的稳定,我们已经将其作为默认分支了。[…] 我们做了如下的事情:
* 旧有的 master 分支重命名为 shotgun。
* cpp 迁移到 master 分支。
* 将 cpp 分支删除。

C++ 分支是采用 C++ 重写 VM,而之前的“shotgun” VM 则是用 C 写成。新的 C++ VM 有:

更好的组织形式。在构建上一个 VM 之时,在关于如何组织的问题上,我们学到了很多经验。例如,使用 C++ 可以让我们将 Ruby 类建模为 C++ 类,使得 VM 和其 Ruby 所对应的部分拥有几乎相同的结构和执行方式。[…] 更好的测试。很惭愧的说,旧版 VM 根本没有单元测试。在新的 VM 中,我们已经编写了单元测试和集成测试。

Rubinius 的代码库目前托管在 Github 之上。

2008-10-30 06:571199
用户头像

发布了 80 篇内容, 共 21.0 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

项目协作的进度如何推进| 社区征文

卢卡多多

初夏征文

NFT新的契机,多媒体NFT聚合平台OKALEIDO即将上线

小哈区块

深入理解 SQL 中的 Grouping Sets 语句

元闰子

sql spark spark SQL

设计电商秒杀系统

大眼喵

「架构实战营」

今晚要修稿子準備發佈。但是,仍卡在這裡,也許你需要的是一個段子。

叶小鍵

NFT新的契机,多媒体NFT聚合平台OKALEIDO即将上线

西柚子

「Docker 那些事儿」还不会安装Docker?建议看这篇就够了

Albert Edison

7月月更

Jenkins抛弃Java 8拥抱Java 11

FunTester

架构实战营 - 第 6 期 毕业总结

乐邦

「架构实战营」

远程办公之如何推进跨部门项目协作 | 社区征文

Tech技术攻关

远程办公 7月日更 项目协调 初夏征文 工作协调

聊聊Flink框架中的状态管理机制

百思不得小赵

大数据 flink 状态 7月月更

Python|函数和模块

AXYZdong

7月月更

Vuex(二)

小恺

7月月更

SpingCloud集成zookeeper实现服务注册并访问

AI乔治

封装一个koa分布式锁中间件来解决幂等或重复请求的问题

程序知音

编程 程序员 后端

cgroup简介

总想做点什么

Cgroups

OpenHarmony应用开发之ETS开发方式中的Image组件

坚果

HarmonyOS Open Harmony OpenHarmony 3.1 Release 7月月更 harmony

疫情常态化大背景下,关于远程办公的思考|社区征文

如浴春风

初夏征文

TCP拥塞控制详解 | 3. 设计空间

俞凡

算法 网络 TCP拥塞控制

Python 入门指南之开胃菜

海拥(haiyong.site)

7月月更

毕业总结

大眼喵

「架构实战营」

『快速入门electron』之实现窗口拖拽

是乃德也是Ned

Electron electron实战 7月月更

CSRF

急需上岸的小谢

7月月更

ORACLE进阶(一) 通过EXPDP IMPDP命令实现导dmp

No Silver Bullet

oracle DMP 7月月更

TOGAF认证自学宝典V2.0

涛哥 数字产品和业务架构

企业架构 TOGAF

x86汇编语言-从实模式到保护模式 笔记

贾献华

7月月更

远程办公之大家一同实现合作编辑资料和开发文档 | 社区征文

Tech技术攻关

远程办公 协同办公 7月日更 初夏征文

自动渗透测试工具核心功能简述

穿过生命散发芬芳

渗透测试 7月月更

远程办公工具分享|社区征文

如浴春风

初夏征文

Flutter 退出当前操作二次确认怎么做才更优雅?

岛上码农

flutter ios 安卓 移动端开发 7月月更

rxjs Observable filter Operator 的实现原理介绍

汪子熙

typescript 响应式编程 angular RXJS 7月月更

Ruby VM近况:Ruby 1.9.1第一预览版发布,Rubinius向C++ VM迁移_Ruby_Werner Schuster_InfoQ精选文章