lua-users home
lua-l archive

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


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
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