Python to LUA transpiler
LUA is a great VM, it embeds nicely and securely, is easy to integrate. Just... that syntax. So this is a project where I experiment using a Python-like syntax that compiles to LUA bytecode.
- Build a basic parser that can build LUA functions
- Extend the parser to handle Classes (using metatables)
- Ensure that all the used functionality of metatables is supported (e.g. operator overloading, default getters, etc...)
- Extend the parser to generate generators (if possible in LUA)
- Extend the parser to generate co-routines (make it clean using async and await statements)
Once/If we get there, and the parser works reliably for many edge cases, introduce this to the LUA community and start a project to port this to C, so that it can be embedded just like LUA/LUAjit.
Python is such a dynamic language, that many of the nuances just won't translate to LUA. We considered this, but decided that there will need to be subtle differences in operation and introspection, so the language technically won't be Python, but a heavily Python-inspired LUA implementation.