NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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:57979
用户头像

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

关注

评论

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

2022-10-06:以下go语言代码输出什么?A:[1 2 3] [1 2 3] ;B:[1 2 3] [3 4 5]; C:[1 2 3] [3 4 5 6 7 8 9];D:[1 2 3] [3

福大大架构师每日一题

golang 福大大 选择题

Python 3.12 目标:还可以更快!

Python猫

Python

Vue项目处理错误上报如此简单

茶无味的一天

Vue 异常捕获

二本Java菜鸟9面字节遭虐,苦修数月深造这份 Java面试宝典,终进阿里

程序知音

Java java面试 程序员面试 后端技术 Java面试八股文

pgsql数据库自动备份

衝鋒壹号

10月月更

【C语言难点突破】指针的常见易错点

Geek_65222d

10月月更

开发者有话说|在刷怪升级的成长路上,技术人应该掌握的三个大招

迷彩

个人成长 10月月更 学会学习 学会提问 学会思考

【一Go到底】第六天---值类型、引用类型、标识符

指剑

Go golang 10月月更

【牛客刷题-算法】加精 _ 合并两个有序的链表 - 从思路设计、bug排除到最终实现的全过程

清风莫追

算法 链表 算法数据结构 10月月更

【结构体内功修炼】结构体实现位段(二)

Albert Edison

C语言 结构体 10月月更 位段

Redis--Redis持久化方式

Java学术趴

10月月更

【牛客刷题-算法】NC141 判断是否为回文字符串

清风莫追

数据结构 算法 刷题笔记 10月月更

【牛客刷题-算法】NC151 最大公约数

清风莫追

数据结构 算法 最大公约数 10月月更

clickhouse准实时数仓能力探索

水滴

实时数仓 OLAP 数仓 10月月更 clickhosue

书单推荐|书籍是人类的良师益友

图灵社区

书单 教师节

【愚公系列】2022年10月 Go教学课程 020-Go容器之数组

愚公搬代码

10月月更

GitHub上的宝藏级SpringBoot核心文档,拿走不谢!

Geek_0c76c3

Java 数据库 开源 程序员 开发

【Nacos源码之配置管理 四】DumpService如何将配置文件全部Dump到磁盘中

石臻臻的杂货铺

nacos 10月月更

【Nacos源码之配置管理 三】TaskManager 任务管理的使用

石臻臻的杂货铺

nacos 10月月更

踩上元宇宙的风口后,消费级AR眼镜真的复兴了吗?

脑极体

Qt|使用QuaZip压缩包中文乱码问题解决

中国好公民st

c++ qt 10月月更

你的方案逻辑自洽吗?

老张

测试方案 思维逻辑

浅谈中小企业如何正确选择网络营销模式

石头IT视角

阿里P8面试官总结的《2022最新java面试题》,搞定90%以上的技术面

程序知音

Java 程序员面试 后端技术 Java面试题 Java面试八股文

书单推荐|书籍是人类的良师益友

图灵教育

书单 教师节

为什么大家偏爱怪异盒模型border-box?

茶无味的一天

CSS 前端 HTML5, CSS3

在Chrome浏览器中最快速实现拾色器(颜色吸管)

茶无味的一天

前端 谷歌浏览器

Android Coder带你了解反射

子不语Any

后端 java; 10月月更

极客时间架构训练营模块二作业

李晨

架构

Redis--Redis事务及错误处理方式

Java学术趴

10月月更

【Go实现】实践GoF的23种设计模式:访问者模式

元闰子

Go 设计模式 访问者模式

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