GraalVM 19.1.0 发布,高性能跨语言虚拟机

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

内容简介:GraalVM 19.1.0 发布了。GraalVM 是高性能跨语言虚拟机,用于运行 JavaScript、Python 3、Ruby、R、基于 JVM 的语言,如 Java、Scala、Kotlin 和基于 LLVM 的语言,如 C 和 C++。 GraalVM 消除了编程语言之间的隔...

GraalVM 19.1.0 发布了。GraalVM 是高性能跨语言虚拟机,用于运行 JavaScript、 Python 3、 Ruby 、R、基于 JVM 的语言,如 Java 、Scala、Kotlin 和基于 LLVM 的语言,如 C 和 C++。

GraalVM 消除了编程语言之间的隔离,并支持共享运行时的互操作性。它可以独立运行,也可以在 OpenJDK、Node、Oracle 或者 MySQL 上运行。

GraalVM 19.1.0 发布,高性能跨语言虚拟机

此版本更新内容包括:

Java

  • 提高了 GraalVM 中 JIT 编译的速度。
  • 在构建编译器的 AOT(ahead-of-time)镜像时应用配置文件引导优化(PGO,profile-guided optimization)。

Native image

修复了一些 GitHub 上报告的问题。

JavaScript

  • 添加了一个实验性选项 js.locale,以设置区域设置敏感操作的默认语言环境。
  • 允许使用 sourceURL 指令在内部创建评估源,方法是在 URL 前加上 internal,如://# sourceURL = internal: myname.js。
  • 使用 ContextPolicy.SHARED 在线程之间启用代码共享。

LLVM interpreter

  • 在嵌入式上下文中调用 exit(...) 现在是一个可捕获的 PolyglotException。
  • 跳过不允许访问的源路径条目。

Ruby

此版本中的 GraalVM Ruby 实现主要进行了性能和兼容性改进,并带来了一些新特性,修复了多个 bug。rb_str_cat 现在更快,因为 C 字符串现在连接前不需要先被转换为 Ruby 字符串或检查其编码。

R

  • 字符串 -Inf、+NaN 和 -NaN 被正确解析为双精度数,包括忽略前导和尾随空格。
  • For 循环创建并初始化控制变量,即使没有迭代。
  • 更新了内置输出功能。
  • 对于外部可执行文件,is.function 返回 true。

Python

  • Python 标准库从 3.7.0 更新到 3.7.3 版本。
  • 改进抛出异常的性能。
  • 修复了原生镜像中核心源的缓存,其中包含用于预构建镜像和 libpolyglot 快速启动的预初始化上下文。
  • 实现对 pwd.getpwuid、os.exec、os.execv 和 os.execlmodules 的支持。

更新说明:

https://www.graalvm.org/docs/release-notes/#1910


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

查看所有标签

猜你喜欢:

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

颠覆者:周鸿祎自传

颠覆者:周鸿祎自传

周鸿祎、范海涛 / 北京联合出版公司 / 2017-11 / 49.80元

周鸿祎,一个在中国互联网历史上举足轻重的名字。他被认为是奠定当今中国互联网格局的人之一。 作为第一代互联网人,中国互联网行业最好的产品经理、创业者,他每时每刻都以自己的实践,为互联网的发展贡献自己的力量。 在很长一段时间内,他没有在公共场合发声,甚至有粉丝对当前死水一潭的互联网现状不满意,发出了“人民想念周鸿祎”的呼声。 但周鸿祎在小时候,却是一个踢天弄井,动不动就大闹天宫的超级......一起来看看 《颠覆者:周鸿祎自传》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试