January 26, 2020

204 words 1 min read

Polyglot applications with GraalVM

Polyglot applications with GraalVM

With the optimizing Graal Compiler added to Java 11 and the language implementations in Truffle for Ruby, Python, JavaScript, and R, it becomes possible to run them natively on the Java virtual machine (JVM), even exchanging data between them. Michael Hunger explains how you can make use of that impressive capability.

Talk Title Polyglot applications with GraalVM
Speakers Michael Hunger (Neo4j)
Conference O’Reilly Open Source Software Conference
Conf Tag Fueling innovative software
Location Portland, Oregon
Date July 15-18, 2019
URL Talk Page
Slides Talk Slides
Video

The JVM is already a runtime for many languages. With the optimizing Graal compiler added to Java 11 and the language implementations in Truffle for Ruby, Python, JavaScript, and R it becomes possible to run them natively on the JVM, even exchanging data between them. Michael Hunger explains the concepts behind Truffle and Graal and uses a practical example to show how you can use Python and JavaScript for “stored procedures” in a JVM-based database. He demonstrates how to optimize the startup time of your application and container images by precompiling it to machine-code and examines its limits and the difference it makes. But nothing is perfect—Michael also discusses the limitations and compares performance for the full picture.

comments powered by Disqus