我发现全局变量和局部变量的解释存在一些差异。
谁能指出我的主要差异列表?
这些可能是最重要的变化:
Ruby 1.9 从被解释变为被字节码编译(使用 YARV VM)。
String 类已完全重新设计,使其具有编码意识。
正则表达式现在是使用 Oniguruma 引擎实现的,而不是 ruby 1.8 中使用的自制引擎,从而启用了负环视等新功能。
来自 stdlib的enumerator
库已添加到核心,并且大多数
Enumerable
方法已更改为Enumerator
在没有块的情况下调用时返回。
Symbol#to_proc
已添加。
lambdas 有一种新语法,
->
它允许默认参数和 lambdas 采用块。
此处有更完整的更改列表。
一个要点可能是他们使用不同的虚拟机(至少,“标准”发行版确实如此,显然有许多选项,如 MacRuby、IronRuby 等)。您可以在这里查看所有更改的详细信息。