To get started with Haxe for Lua, it's necessary to pick a Lua version and install dependencies. All versions of Lua are supported, but may require different libraries. Lua 5.1, 5.2, 5.3, and LuaJIT 2.0 and 2.1 (beta) are supported.
Lua is a very lightweight language that ships with a much smaller feature set than Haxe. In some cases (e.g. regex), it's necessary to install supplementary libraries that are used to support basic Haxe functionality.
In order to cover all dependencies, it is recommended to install and use LuaRocks. However, if you do not utilize relevant behavior (e.g. regex) on a given platform, or if you are using an embedded Lua client, then it is not necessary to install any packages for basic language functionality.
With LuaRocks, install the following packages:
luarocks install lrexlib-pcre2 luarocks install luasocket luarocks install luasec luarocks install luv luarocks install luautf8 luarocks install hx-lua-simdjson
On Lua 5.1 or Lua 5.4+, install the bit32 library:
luarocks install bit32
When developing for multiple Lua versions, it is recommended to use the Python package hererocks.
With Lua installed, it is possible to write a simple command line application.
Create a new folder, and save this class as Main.hx
.
class Main { static function main() { trace("hello world"); } }
To compile, run the following:
haxe --lua out.lua --main Main