GraalVM 21.3.0 社区版发布,高性能跨语言虚拟机原创
4年前 
328500
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
来源:开源中国,转载已获授权
原文链接:https://www.oschina.net/news/165285/graalvm-21-3-released
点赞收藏
