Fueling innovative software
July 15-18, 2019
Portland, OR

Polyglot applications with GraalVM

Michael Hunger (Neo4j)
4:15pm4:55pm Thursday, July 18, 2019
The Next Architecture
Location: Portland 255
Secondary topics:  Cloud Native
Average rating: *****
(5.00, 2 ratings)

Who is this presentation for?

  • Developers, DevOps, Pythonistas, and data scientists




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.

Prerequisite knowledge

  • A basic understanding of JVM and Java
  • Experience as a developer
  • A working knowledge of Docker and FaaS

What you'll learn

  • Understand how the JVM compiler works and what Graal does differently
  • Learn how to run polyglot programs on the JVM, how the different languages interact, how to use it, and how you build machine-code optimized versions of your program and Docker container
Photo of Michael Hunger

Michael Hunger


Michael Hunger is a chief connector at Neo4j and has been passionate about software development for more than 25 years. He’s especially active in the Java/Java virtual machine (JVM) community and is honored to be a Java Champion. He’s been filling many roles while working on the open source Neo4j graph database. As caretaker general of the Neo4j community, he especially loves to work with graph-related projects, users, and contributors. As a developer, Michael enjoys many aspects of programming languages, learning new things every day, participating in exciting and ambitious open source projects and contributing and writing software related books and articles. He’s spoken at numerous conferences and helped organized several of them. He helps kids to learn to program by running weekly girls-only coding classes at local schools.