GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Kotlin, and LLVM-based languages such as C and C++.
site
YOUTUBE oWX2tpIO4Yc Published on Apr 23, 2017.
GraalVM removes the isolation between programming languages and enables interoperability in a shared runtime. It can run either standalone or in the context of OpenJDK, Node.js, Oracle Database, or MySQL.
# Features
- Run your code faster and more efficiently Interoperate directly with most modern programming languages - Embed languages with the Graal SDK - Create compiled native images - Use a single set of tools to monitor, debug, and profile all your code
# Implement your own language
Graal makes it easy to optimise a language that you implement, and to make it available in a polyglot context. Given an abstract syntax tree created in a language like Java, you can use Graal to compile the language down to bitecode so that it runs within the GraalVM.
The SimpleLanguage example uses Coco to generate an abstract syntax tree from code (I think) - graalvm.org
YOUTUBE ZbccuoaLChk Published on Nov 9, 2017.
# Scale
Twitter is a massively distributed system with thousands of machines running thousands of JVMs. In any similar big system a small change in performance and CPU utilization is multiplied thousandfold and results in big savings. Twitter is going down that road and experimenting with Graal to generate better code and reduce cost.
# See also
- GraalVM
- Polyglot VM - graalvm.org
- Embed languages - graalvm.org
- Oleg Ĺ elajev on twitter