Ruby 2.6.0编程语言的第六次更新在这里

红宝石Linux

经过一年的开发,Ruby 2.6.0发行版发布了, 一种动态的面向对象的编程语言,具有很高的软件开发效率,并融合了Perl,Java,Python,Smalltalk,Eiffel,Ada和Lisp的最佳功能。

项目代码是在BSD许可下分发的 (“两段式BSDL”)和“ Ruby”,指的是最新的GPL许可证,并且完全符合GPLv2。

Ruby 2.6是第六个主要版本,这是计划中的开发过程的一部分,其中涉及分配一年的时间来准备功能改进并每2-3个月创建一个更正版本。

Ruby 2.6.0中的主要新功能

有了这个新版本的Ruby 添加了JIT编译器的实验性实现, 这使您可以显着提高Ruby语言应用程序的性能。

与传统的JIT编译器动态生成机器指令不同,在Ruby中建议的JIT编译器首先将C代码写入磁盘,然后调用外部C编译器来生成机器指令(支持GCC,Clang和Microsoft VC ++)。

要启用JIT,必须在启动ruby时指定“ –jit”选项或在RUBYOPT环境变量中设置此选项。

与Ruby 2.5相比,JIT的平均性能是CPU密集型应用程序性能的1.7倍。

同时,开发仍处于试验阶段,不适合与内存密集型工作相关的负载。

此版本中获得的其他改进是 RubyVM :: AbstractSyntaxTree实验模块,它提供了一种解析方法,该方法将传递的字符串作为Ruby代码进行处理,并为此代码返回一个抽象语法树(AST)。

现在可以使用别名“ #then”来访问“内核#yield_self”方法。 对于“ Array#|”方法和“ Array#-”建议使用更具可读性的别名“ Array#union”和“ Array#Difference”。

常量名称现在可以以ASCII以外的大写字母开头。

还提供了对瞬态堆的支持,该堆用于使用特定类(数组,哈希,对象,结构)的寿命较短的对象。

的Ruby-on-轨道

例如,由于有了theap,现在创建小的,短暂的现有哈希值的速度快了两倍。 rdoc测试表明产量提高了6-7%。

为了提高上下文切换的性能,提出了协程的本地实现 适用于arm32,arm64,ppc64le,win32,win64,x86和amd64体系结构。 现在,在64位Linux系统上,“ Fiber.yield”和“ Fiber#resume”的运行速度几乎提高了5倍。

一般而言,强化计划显示出5%的性能提升。

Ruby 2.6.0的重大改进

收到了RubyGems 3.0.1的更新版本,其中已不再支持“ -ri”和“ -rdoc”选项,而应使用“ -document”和“ -no-document”。

现在默认情况下已安装Bundler,以管理gem依赖项。

添加了对未完成范围的支持,例如“ ary [1 ..]”或“((1 ..)”。 每个 {…} ”。

在可以突出显示的其他改进中,您可以找到:

  • 异常选项已添加到Kernel#系统方法中,以在发生错误时引发异常,而不是返回false。
  • 单发模式已 已添加到coverage模块,该模块检查每一行是否至少执行一次。
  • 添加Enumerator :: Chain类以及在其中实现的“ Enumerable#链”和“ Enumerator#+”方法,以创建枚举值的链。
  • Proc和Method模块中已添加了对运算符«<<»和«>>»的支持,例如,构造«(f << g).call(3)»与«f(g(3( ))”。

如何在Linux上安装Ruby 2.6.0?

要获得此新版本的Ruby,只需在系统上打开一个终端,然后输入以下命令之一

Debian,Ubuntu及其衍生版本

sudo apt-get install ruby-full

CentOS,Fedora和RHEL

sudo yum install ruby

Gentoo的

sudo emerge dev-lang/ruby

Arch Linux,Manjaro,Antergos及其衍生版本

sudo pacman -S ruby

openSUSE

sudo zypper install ruby

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   丹尼尔

    apt-get yum etc命令转到发行版的默认存储库,该存储库通常较旧,并且您将不会拥有2.6版,而会拥有另一个旧版本。