One of the many cool features of GraalVM is its support for polyglot applications. The ability to mix and match programming styles and paradigms makes it easy to combine different programming models allowing developers to take advantage of different languages in a single application. Since GraalVM was open sourced, many platforms and frameworks have started embedding GraalVM language runtimes to provide scripting capabilities through dynamic languages such as JavaScript or Python, for example Vert.x Es4x, as well as some experimental builds of Oracle Database.

Mixing and combining different programming languages often means mixing and combining different programming styles and paradigms…


JavaScript and Java are among today’s most popular programming languages. One of the greatest features of GraalVM is its extensive support for multi-language interoperability, which allows developers to combine languages, including Java and JavaScript, into powerful multi-language applications. Whether your Java code needs to be enriched with JavaScript functionalities, or you are looking for using a Java library in a Node.js application, GraalVM interoperability might be the perfect choice for your polyglot application.

One of the most crucial aspects in achieving a successful polyglot Java/JavaScript integration is multi-threading. In a polyglot world, using parallel threads can be quite tricky: while…

Daniele Bonetta

Researcher at Oracle Labs in the VM research group and member of the GraalVM project.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store