diff options
Diffstat (limited to 'doc/luac.html')
-rw-r--r-- | doc/luac.html | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/doc/luac.html b/doc/luac.html new file mode 100644 index 0000000..179ffe8 --- /dev/null +++ b/doc/luac.html @@ -0,0 +1,145 @@ +<!-- $Id: luac.man,v 1.28 2006/01/06 16:03:34 lhf Exp $ --> +<HTML> +<HEAD> +<TITLE>LUAC man page</TITLE> +<LINK REL="stylesheet" TYPE="text/css" HREF="lua.css"> +</HEAD> + +<BODY BGCOLOR="#FFFFFF"> + +<H2>NAME</H2> +luac - Lua compiler +<H2>SYNOPSIS</H2> +<B>luac</B> +[ +<I>options</I> +] [ +<I>filenames</I> +] +<H2>DESCRIPTION</H2> +<B>luac</B> +is the Lua compiler. +It translates programs written in the Lua programming language +into binary files that can be later loaded and executed. +<P> +The main advantages of precompiling chunks are: +faster loading, +protecting source code from accidental user changes, +and +off-line syntax checking. +<P> +Precompiling does not imply faster execution +because in Lua chunks are always compiled into bytecodes before being executed. +<B>luac</B> +simply allows those bytecodes to be saved in a file for later execution. +<P> +Precompiled chunks are not necessarily smaller than the corresponding source. +The main goal in precompiling is faster loading. +<P> +The binary files created by +<B>luac</B> +are portable only among architectures with the same word size and byte order. +<P> +<B>luac</B> +produces a single output file containing the bytecodes +for all source files given. +By default, +the output file is named +<B>luac.out</B>, +but you can change this with the +<B>-o</B> +option. +<P> +In the command line, +you can mix +text files containing Lua source and +binary files containing precompiled chunks. +This is useful because several precompiled chunks, +even from different (but compatible) platforms, +can be combined into a single precompiled chunk. +<P> +You can use +<B>'-'</B> +to indicate the standard input as a source file +and +<B>'--'</B> +to signal the end of options +(that is, +all remaining arguments will be treated as files even if they start with +<B>'-'</B>). +<P> +The internal format of the binary files produced by +<B>luac</B> +is likely to change when a new version of Lua is released. +So, +save the source files of all Lua programs that you precompile. +<P> +<H2>OPTIONS</H2> +Options must be separate. +<P> +<B>-l</B> +produce a listing of the compiled bytecode for Lua's virtual machine. +Listing bytecodes is useful to learn about Lua's virtual machine. +If no files are given, then +<B>luac</B> +loads +<B>luac.out</B> +and lists its contents. +<P> +<B>-o </B><I>file</I> +output to +<I>file</I>, +instead of the default +<B>luac.out</B>. +(You can use +<B>'-'</B> +for standard output, +but not on platforms that open standard output in text mode.) +The output file may be a source file because +all files are loaded before the output file is written. +Be careful not to overwrite precious files. +<P> +<B>-p</B> +load files but do not generate any output file. +Used mainly for syntax checking and for testing precompiled chunks: +corrupted files will probably generate errors when loaded. +Lua always performs a thorough integrity test on precompiled chunks. +Bytecode that passes this test is completely safe, +in the sense that it will not break the interpreter. +However, +there is no guarantee that such code does anything sensible. +(None can be given, because the halting problem is unsolvable.) +If no files are given, then +<B>luac</B> +loads +<B>luac.out</B> +and tests its contents. +No messages are displayed if the file passes the integrity test. +<P> +<B>-s</B> +strip debug information before writing the output file. +This saves some space in very large chunks, +but if errors occur when running a stripped chunk, +then the error messages may not contain the full information they usually do. +For instance, +line numbers and names of local variables are lost. +<P> +<B>-v</B> +show version information. +<H2>FILES</H2> +<P> +<B>luac.out</B> +default output file +<H2>SEE ALSO</H2> +<B>lua</B>(1) +<BR> +<A HREF="http://www.lua.org/">http://www.lua.org/</A> +<H2>DIAGNOSTICS</H2> +Error messages should be self explanatory. +<H2>AUTHORS</H2> +L. H. de Figueiredo, +R. Ierusalimschy and +W. Celes +<!-- EOF --> +</BODY> +</HTML> |