Programming language: Java
License: GNU General Public License v3.0 or later
Tags: JVM And JDK     Projects    
Latest version: v20.3.0

Graal alternatives and similar libraries

Based on the "JVM and JDK" category.
Alternatively, view Graal alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of Graal or a related project?

Add another 'JVM and JDK' Library




GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Clojure, Kotlin, and LLVM-based languages such as C and C++.

The project website at https://www.graalvm.org describes how to get started, how to stay connected, and how to contribute.

Repository Structure

The GraalVM main source repository includes the components listed below. The documentation for each component includes developer instructions for the component.

  • [GraalVM SDK](sdk/README.md) contains long term supported APIs of GraalVM.

  • [GraalVM compiler](compiler/README.md) written in Java that supports both dynamic and static compilation and can integrate with the Java HotSpot VM or run standalone.

  • [Truffle](truffle/README.md) language implementation framework for creating languages and instrumentations for GraalVM.

  • [Tools](tools/README.md) contains a set of tools for GraalVM languages implemented with the instrumentation framework.

  • [Substrate VM](substratevm/README.md) framework that allows ahead-of-time (AOT) compilation of Java applications under closed-world assumption into executable images or shared objects.

  • [Sulong](sulong/README.md) is an engine for running LLVM bitcode on GraalVM.

  • [GraalWasm](wasm/README.md) is an engine for running WebAssembly programs on GraalVM.

  • [TRegex](regex/README.md) is an implementation of regular expressions which leverages GraalVM for efficient compilation of automata.

  • [VM](vm/README.md) includes the components to build a modular GraalVM image.

  • VS Code provides extensions to Visual Studio Code that support development of polyglot applications using GraalVM.

Get Support

GraalVM allows running of following languages which are being developed and tested in related repositories with GraalVM core to run on top of it using Truffle and the GraalVM compiler. These are:


Each GraalVM component is licensed:

  • Truffle Framework and its dependency GraalVM SDK are licensed under the [Universal Permissive License](truffle/LICENSE.md).
  • Tools project is licensed under the [GPL 2 with Classpath exception](tools/LICENSE).
  • TRegex project is licensed under the [Universal Permissive License](regex/LICENSE.md).
  • GraalVM compiler is licensed under the [GPL 2 with Classpath exception](compiler/LICENSE.md).
  • Substrate VM is licensed under the [GPL 2 with Classpath exception](substratevm/LICENSE).
  • Sulong is licensed under [3-clause BSD](sulong/LICENSE).
  • GraalWasm is licensed under the [Universal Permissive License](wasm/LICENSE).
  • VM is licensed under the [GPL 2 with Classpath exception](vm/LICENSE_GRAALVM_CE).
  • VS Code extensions are distributed under the UPL 1.0 license.

*Note that all licence references and agreements mentioned in the Graal README section above are relevant to that project's source code only.