This is luac, the Lua compiler.
There are man pages for it in both nroff and html in ../../doc.

luac translates Lua programs into binary files that can be loaded and executed
with lua_dofile in C or with dofile in Lua.
The main advantages of pre-compiling chunks are: faster loading, protecting
source code from user changes, and off-line syntax error detection.
luac can also be used to learn about the Lua virtual machine.

Here are the options that luac understands:

  -        compile stdin
  -c       compile (default)
  -d       generate debugging information
  -D name  predefine `name' for conditional compilation
  -l       list (default for -u)
  -n       save numbers in native format (file may not be portable)
  -o file  output file for -c (default is "luac.out")
  -O       optimize
  -p       parse only
  -q       quiet (default for -c)
  -t       test code integrity
  -u       undump
  -U name  undefine `name' for conditional compilation
  -v       show version information
  -V       verbose

Finally, luac is an example of how to use the internals of Lua (politely).
Also, luac does not need the runtime code and stubs.c makes sure it is not
linked into luac. This file also shows how to avoid linking the parser.
