Native Script Engine or Go Panama
summary
Prototype integrates V8 as a javax.script sibling to Nashorn using V8 via JNI, showing concrete wins: startup is ~2× faster than Rhino and ~30% faster than Nashorn/GR‑JS, a large-script worst case runs ~3× smaller and faster, microbenchmarks show up to 6× speed and lower memory, and the implementation is ~26,000 LOC vs 180,000 LOC for Nashorn. It exposes full Java interop, automatic GC bridging, Node compatibility, Chrome DevTools debugging, runs stably in experiments, and explores replacing JNI with Panama for lower call overhead.
AI-written summary · about
chapters (24)
- 0:00Intro
- 0:27Overthinking A Title
- 6:05Back Story
- 7:39Nashorn Backlog
- 9:39Let's Face It, V8 Rules
- 11:33Proof Of Concept: JVMV8
- 13:50Rough Notes on Performance
- 15:24Example: Java Side
- 15:45Example: JavaScript Side
- 16:25Example: Beyond Nashorn
- 19:49JVMV8 Components
- 22:43V8 Objects In Java
- 23:35Java Objects in V8
- 24:54JavaScript Constructor Generator
- 25:40V8 JNI primitives
- 27:30jvmv8.boot
- 30:03Garbage Collection Java Side
- 31:03Garbage Collection V8 Side
- 34:36Multi-threading API
- 35:50Example: Multi-threading
- 38:27Node.js: Creating JVM
- 38:53Node.js: Using Java
- 39:29Sustainable JavaScript for JVM
- 40:27Experiments In Progress








