Truffle

From APIDesign

Revision as of 14:20, 14 June 2015 by JaroslavTulach (Talk | contribs)
Jump to: navigation, search

A set of API to build own language interpreter that gets special treatment by Graal (the next version HotSpot VM). As a result well written interpreter can at the end run faster than generated native code.

Truffle is using sort of AsmJs approach: rather than complicated the JVM (like it was done with invokeDynamic instruction), it creates additional Java APIs that dynamic language vendors may use. The API patterns are then recognized by the enhanced HotSpot compiler to emit more effective code. All of that without modification to the JVM spec.

Truffle Ruby implementation is ten times faster than pure JRuby (based on invokeDynamic).

Personal tools
buy