Skip to main content

GraalVM Under The Covers

 At a very high level, GraalVM is a runtime that can compile bytecode into native self-contained executables as well as run programs in languages other than Java. This detailed look at it attempts to put a highly technical and difficult subject into perspective.


The starting point for this article was "Exploring Aspects of Polyglot High-Performance Virtual Machine GraalVM", a paper by M. Šipek, B. Mihaljević and A. Radovan of Rochester Institute of Technology Croatia, Zagreb, Croatia. The presents GraalVM's architecture, its features and examines how it resolves common interoperability and performance problems when having to support multiple programming languages. I've extended it in order to provide a high level overview in simple terms.


Virtual Machines were invented in order to run programs in an independent way regardless of the platform and the underlying hardware. Examples are the . NET CLR, MoarVM the modern virtual machine built for the Rakudo compiler implementing the Raku Programming Language and of course the JVM. Initially the JVM was built in order to make Java portable across platforms by running bytecode coming out of the Java compiler. Soon enough other languages that could emit bytecode for the JVM came along, like Scala, Kotlin, Groovy or Clojure, therefore extending the JVM's application beyond Java.

graalvmlogo

full article on i-programmer:

https://www.i-programmer.info/programming/java/15129-graalvm-under-the-covers.html

Comments

Popular posts from this blog

Ingres vs Postgres MVCC Explained With Neo4j's LLM Knowledge Graph Builder

 LLM Knowledge Graph Builder is an application designed to turn unstructured data such as pdfs, text documents, YouTube videos, and web pages, into a knowledge graph stored in Neo4j, promising much better accuracy than simple RAG (Retrieval-Augmented Generation). https://www.i-programmer.info/news/80-java/17967-ingres-vs-postgres-mvcc-explained-with-neo4js-llm-knowledge-graph-builder-.html

The Advent of SQL 2024 Has Commenced

  It's Advent - the time of year when we countdown the days to Christmas - and if your are a programmer complete daily coding challenges with the Advent of Code, the Advent of Perl, the Advent of Java, Javascriptmas, etc. Now we have the Advent of SQL too with 24 SQL challenges to complete before Christmas! https://www.i-programmer.info/news/204-challenges/17678-the-advent-of-sql-2024-has-commenced.html