https://gist.github.com/Vesnica/3672425
It loads and runs a Lua source code file which calls the exported C function. Lua compiles the source code into byte code before running it but that can also be done ahead of time with the Lua compiler:
https://www.lua.org/manual/5.3/luac.html
It can also be done manually with the dump and load functions:
https://www.lua.org/manual/5.3/manual.html#lua_dump
https://www.lua.org/manual/5.3/manual.html#lua_load