Ruby 1.9 新动向,1.8.7 计划发布

  • Werner Schuster
  • 李明(nasi)

2008 年 3 月 7 日

话题:Ruby语言 & 开发

2007 年 12 月 25 日 Ruby 1.9 发布2 个月后,一个新的快照版本刚刚发布:Ruby 1.9.0-1,可以在ftp://ftp.ruby-lang.org/pub/ruby/1.9/找到。

此发布版主要是 bug 修复,但是也有一些修改是所有 1.9 使用者需要注意的,因为涉及到了行为修改:

* Enumerable#zip 的行为恢复到 1.8 版本。

* Hash#flatten 不再递归执行。

Ruby 创始人 Yukihiro Matsumoto(“Matz”)阐明了Hash#flatten的新特性:

我的意思是

  {a: [:a,1], b: 2}.flatten 

会返回

  [:a, [:a, 1], :b, 2] 

而不是

  [:a, :a, 1, :b, 2]

正如以前一样。

还有一些著名的扩充,比如最近在 InfoQ 被讨论的Proc#curry。其他的添加包括:

* 增加了 Math.cbrt。

* 增加了 Math.{gamma,lgamma}。

* 引入 RubyGems r1601。

* 增加了 Proc#curry.

* Oniguruma 5.9.1

* 增加了 UTF-16、CP949、EUC-KR、GB12345、UCS-{2,4}{BE,LE}、GBK、CP936、CP949、GB2312、 UTF-7、BIG5、EUC-TW、GB18030、KOI8、KOI8-R、KOI8-U 和 Windows-1251 的支持。

Ruby 1.9 的使用者可以通过Multiruby 在不同的 Ruby 版本上运行测试用例,以快速确定行为的改变。

当 Ruby 1.9 的开发工作持续前行之时,稳定版 1.8.x 分支依然被维护。Akinori Musha 贴出了一个Ruby 1.8.7 的工作日历。Ruby 1.8.7 作为 1.8 分支的下一个稳定发布,其规格修改依然在决定当中。发布时间初定定在 2008 年 4 月底。

查看英文原文:New snapshot of Ruby 1.9, plans for 1.8.7 posted

Ruby语言 & 开发