
The GraalVM compiler was started by manually converting the code of the Hotspot client compiler (named "C1") into Java, replacing the previous Maxine compiler. Upon realizing that writing everything in Java was too ambitious as a first step, the decision was taken to focus on the compiler only and hook it into Hotspot, to reuse as much as possible the Hotspot runtime. The goal was to write a Java virtual machine in Java itself, hoping to free the development from the problems of developing in C++, particularly manual memory management, and benefit from meta-circular optimizations. GraalVM has its roots in the Maxine Virtual Machine project at Sun Microsystems Laboratories (now Oracle Labs). To include an easily extended set of " polyglot programming tools".To allow freeform mixing of code from any programming language in a single program, billed as " polyglot applications".To enable GraalVM integration into the Oracle Database, OpenJDK, Node.js, Android/iOS, and to support similar custom embeddings.To reduce the startup time of JVM-based applications by compiling them ahead-of-time with GraalVM Native Image technology.



Community Edition: GPLv2 Enterprise Edition: Trialware
