lucasallan / LuaTruffle

LuaTruffle, an implementation of Lua on the JVM using Truffle
55 stars 9 forks source link

LuaTruffle - A Java implementation of the Lua language using Truffle

Master: Build Status

 Compiling

mvn package

Running

bin/luatruffle my.lua

Running With Graal

Download one of:

Then run:

JAVACMD=../graalvm-jdk1.8.0/bin/java bin/luatruffle my.lua

Options

To pass options to the JVM, prefix with -J. For example, -J-Xmx1G.

Performance

Fibonacci is of course a terrible benchmark, but it's all we can run at the moment. We also probably don't implement Lua correctly yet.

Compare:

lua src/test/resources/fibonacci.lua
luajit src/test/resources/fibonacci.lua
JAVACMD=../graalvm-jdk1.8.0/bin/java bin/luatruffle src/test/resources/fibonacci.lua

We're around 6x compared to lua, and a third as fast as luajit.