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, off-line syntax error detection.
luac can also be used to learn about the Lua virtual machine.

Here are the options that luac understands:

 -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
 -              compile "stdin"

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.

