1. Introducing a Pure LUA JVM luje
10/7/2013 9:12:14 PM
Introducing a Pure LUA JVM luje
LUA JVM, Java Virtual Machine
App Developer Magazine

Introducing a Pure LUA JVM luje

Richard Harris Richard Harris in Programming Monday, October 7, 2013

luje is an experimental (read: toy) Java virtual machine written in pure Lua. It works by compiling Java bytecode into Lua scripts on-the-fly and then running them using Mike Pall's LuaJIT 2. The result is an extremely fast but incredibly lightweight Java virtual machine which can outperform Sun's Hotspot in some situations.

Right now it excels at anything which involves tight loops and float or doubles in local variables --- see the LocalBench benchmark. It'll comfortably beat Hotspot (on amd64, or Zero on ARM) with those. However, it does very badly with longs, as LuaJIT currently boxes those. Fields and methods of objects are stored in hash tables, so accessing fields in an inner loop will tend to cause luje to slow down. In any non-trivial benchmark it usually manages about 50% to 75% of Hotspot. Still, that's not bad given that the whole thing is less than 3000 lines of code.

Read more: https://cowlark.com/luje/doc/stable/doc/index.wiki