Here is a full list of reasons: http://www.graalvm.org/docs/why-graal/
Here are some (maybe a bit outdated, but independent) benchmarks comparing it to Nashorn: http://blog.nidi.guru/tech/javascript/2018/04/02/javascript-...
We have some way to go to beat V8.
- graal has superior compiler technology based off of a research paper [1] that:
-- has superior ability to remove costly object allocations in many scenarios
-- has better inlining and more aggressive speculative optimizations
-- has smarter jit compilation
[1] http://www.ssw.uni-linz.ac.at/Research/Papers/Stadler14/Stad... (pdf)
http://lafo.ssw.uni-linz.ac.at/papers/2013_VMIL_GraalIR.pdf
https://dl.acm.org/citation.cfm?doid=2245276.2232084
http://aleksandar-prokopec.com/resources/docs/graal-collecti...
"Are you working on a Java application? Do you want a faster runtime?"
Graal provides an ahead of time compiler for Java, which can speed things up by removing JVM warm up time. I'm unsure how much faster Graal is compared to steady-state JVM.
"Enhance your code with JavaScript!"
Embedding Graal is an alternative to Nashorn.
> Are you working on a Java application? Do you want a faster runtime? Enhance your code with JavaScript!
First, the JVM already has the Nashorn JS engine. Second, if I'm "working on a Java app", that means that it's already running in a JVM. Where does the faster runtime come from? Is executing JS from Java using Graal faster than running actual Java code? Is it just faster than Nashorn? Something else?