GraalVM 21.3.0 社区版发布,高性能跨语言虚拟机

栏目: 软件资讯 · 发布时间: 4年前

内容简介:GraalVM 是 Oracle 打造的高性能跨语言虚拟机,支持运行 JavaScript、Python 3、Ruby、R、基于 JVM 的语言(如 Java、Scala 和 Kotlin),以及基于 LLVM 的语言,如 C 和 C++。 GraalVM 21.3.0 更新内容如下: 新...

GraalVM 是 Oracle 打造的高性能跨语言虚拟机,支持运行 JavaScript、 Python 3、 Ruby 、R、基于 JVM 的语言(如 Java 、Scala 和 Kotlin),以及基于 LLVM 的语言,如 C 和 C++。

GraalVM 21.3.0 更新内容如下:

新功能

  • 现在默认使用 TRegex,这为正则表达式的匹配提供了很大的速度提升
  • 添加 Polyglot.languages 以显示可用语言的列表。
  • 外部对象现在有了一个基于其互操作特性的动态生成的类,如 ForeignArray,并能更好地与 Ruby 对象集成。
  • 外部数组现在拥有 Ruby Enumerable 的所有方法和 Array 的许多方法。
  • 外部哈希现在拥有 Ruby Enumerable 的所有方法和 Hash 的许多方法。
  • 外部的迭代器 ( InteropLibrary#hasIterator) 现在拥有 Ruby Enumerable 的所有方法。
  • 外部对象现在实现了 #instance_variables #methods

错误修正

  • 修复 rb_str_modify_expand,以保留现有的字节。
  • 修复 Dir.mkdir  Pathname 路径的错误处理。
  • 修复多次加载同一文件时的常量查找。
  • 修正 define_method(name, &block) 方法中 break next  redo 的处理。
  • 修复 Float#<=>中不兼容类型的处理。
  • 修正 Dir.glob 的大括号转义问题。
  • 修复 base64 解码时输出丢失的问题。

兼容性

  • 实现 Process::Status.wait
  • 更新 rb_str_modify  rb_str_modify_expand,当给定一个冻结的字符串时引发 FrozenError 
  • 实现 rb_fiber_* 函数。
  • 实现 rb_str_vcatf
  • 实现 rb_str_catf
  • 接受字符串作为 StringScanner#scan StringScanner#check的模式参数。
  • ……

更多详情可查看:https://github.com/oracle/truffleruby/releases/tag/vm-21.3.0


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入浅出WebAssembly

深入浅出WebAssembly

于航 / 电子工业出版社 / 2018-11 / 128.00元

WebAssembly是一种新的二进制格式,它可以方便地将C/C++等静态语言的代码快速地“运行”在浏览器中,这一特性为前端密集计算场景提供了无限可能。不仅如此,通过WebAssembly技术,我们还可以将基于Unity等游戏引擎开发的大型游戏快速地移植到Web端。WebAssembly技术现在已经被计划设计成W3C的标准,众多浏览器厂商已经提供了对其MVP版本标准的支持。在Google I/O ......一起来看看 《深入浅出WebAssembly》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具