lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


I don't know how feasilble it is, but it might be interesting to try porting the LuaJIT *interpreter* to emscripten. It is significantly faster than the PUC Lua interpreter, though who knows whether the advantages will translate to emscripten or not. Still, it might be worth trying. 

On Jun 1, 2013, at 10:52 AM, Alon Zakai <alonzakai@gmail.com> wrote:

> I added the ability to write HTML script tags in Lua, example here
> 
> http://kripken.github.io/lua.vm.js/script_example.html
> 
> Do "view source" on the page to see the Lua in it.
> 
> - Alon
> 
> 
> 
> On Thu, May 30, 2013 at 11:31 AM, Alon Zakai <alonzakai@gmail.com> wrote:
> Hi everyone,
> 
> I'd like to present lua.vm.js, a new project that ports the Lua VM to JavaScript using Emscripten. The goal is to get the full Lua language running on the web, so people can use Lua there.
> 
> main page: http://kripken.github.io/lua.vm.js/lua.vm.js.html
> repl: http://kripken.github.io/lua.vm.js/repl.html
> blogpost with more details: http://mozakai.blogspot.com/2013/05/lua-in-javascript-running-vm-in-vm.html
> 
> The idea is that by compiling Lua to asm.js, a subset of JavaScript that is easy to optimize, the Lua VM can run at nearly the speed it would run normally on your machine. Benchmarks show it can run at about half the speed of a native build, which should be more than enough for many use cases I think, and this is expected to improve.
> 
> Comparison to other approaches for running Lua on the web:
> 
> * This is a straightforward compilation of Lua 5.2.2. So no effort is needed to recreate all the work done on Lua, we just compile it to JS like we would compile it to x86 or ARM, and get the full language "for free".
> 
> * This uses only standard stuff on the web - JavaScript - and does not require anything nonstandard or proprietary (like Flash, NaCl, etc.). So it should run in any modern browser.
> 
> * Speed will vary by browser, depending on the power of the JS engine on this type of code (you can run a benchmark on the main page in those links). The half native speed figure from before is what I get on my machine, running Firefox nightly. But even if it is less fast on another browsers, the good thing about the JS speed race is that they all get faster in order to match whichever is better at something, so I would expect this to become fast everywhere.
> 
> Hopefully this project will be interesting to people. It would be great to get feedback and help from Lua users and developers to improve it and make it something that's useful for people.
> 
> - Alon Zakai
> 
>