沐浴春天 2018-04-23
甲骨文公司的使命是创建一个通用虚拟机,可以支持多种语言,同时提供一致的性能,工具和配置。该公司宣布推出GraalVM 1.0,这是一款虚拟机,旨在实现高性能和互操作性的任务,在构建多语种应用程序时无需额外费用。
据该公司称,目前大多数虚拟机仅支持特定语言或一小部分语言。“编译,内存管理和工具分别针对不同的语言进行维护,违反了”不要重复自己“(DRY)原则。这不仅会给虚拟机实施者带来更大的负担,“GraavlVM团队在一篇文章中写道。
GraalVM允许外部语言使用对象和数组,而无需首先将它们转换为不同的语言。例如,该工具将允许Node.js代码访问Java库的功能,或者从Java内部调用Python例程。借助这种灵活性,程序员将能够使用他们认为最适合他们尝试完成的任务的任何语言,Oracle解释道。
这第一个版本将允许开发人员运行基于JVM的语言,如Java,Scala,Groovy或Kotlin; JavaScript的; LLVM位码; 以及Ruby,R和Python的实验版本。它可以自行运行,作为平台的一部分嵌入或在数据库中运行。
核心安装为开发人员提供了与语言无关的调试器,分析器和堆查看器。Oracle鼓励第三方开发人员使用Instrumentation API或语言实现API制作工具,以进一步改进GraalVM生态系统。据该公司称,它将“GraalVM设想为语言级别的虚拟化层,允许利用所有语言的工具和嵌入。”
“这第一次发布只是一个开始。我们正在努力改进GraalVM的各个方面; 特别是对Python,R和Ruby的支持。GraalVM是一个开放的生态系统,我们鼓励在其上构建自己的语言或工具。我们希望让GraalVM成为一个能够实现标准化语言执行的协作项目和一套丰富的与语言无关的工具,“甲骨文在声明虚拟机的声明中说。