Since I’m having untracable issues with Lua due to its API and lackluster documentation, I’ve decided to drop it from my game engine (PixelPerfectEngine) in favor of some easier to use alternatives.
What I need is:
- open source
- small footprint even if it at the cost of some complexity (I need it as a scripting engine, not as a replacement for compiled application languages)
- integer support (I don’t care if I could just round it on the backend)
- C or C++ ABI
- can be embedded into a software (yes, there are people that suggest you to use janky solutions like passing data in files and command line)
Even a better Lua implementation would suffice, and if I had the time, I would port the official one to D (my main language), while getting rid of the godawful stack method of control.
This is not a recommendation, but just a couple of days ago someone linked to this project, claiming similar goals to lua, great performance, and gradual typing:
https://cyberscript.dev/
I can’t tell you what it’s actually like though.
A more established, proven option is Haxe. Haxe has a lot of libraries but I think it’s specifically designed to be batteries-optional. This Haxe VM in particular looks pretty impressive:
https://hashlink.haxe.org/
Haxe has the distinction of having been used to ship loads of successful games made by small teams with custom engines.
Another option designed for simplicity, low-complexity and easy embedding is wren:
https://wren.io/
Implementation is apparently only 4000 lines.
Not OP, but wren sounds amazing. Thanks for sharing!