123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- .\" $Id: luac.man,v 1.29 2011/11/16 13:53:40 lhf Exp $
- .TH LUAC 1 "$Date: 2011/11/16 13:53:40 $"
- .SH NAME
- luac \- Lua compiler
- .SH SYNOPSIS
- .B luac
- [
- .I options
- ] [
- .I filenames
- ]
- .SH DESCRIPTION
- .B luac
- is the Lua compiler.
- It translates programs written in the Lua programming language
- into binary files containing precompiled chunks
- that can be later loaded and executed.
- .LP
- The main advantages of precompiling chunks are:
- faster loading,
- protecting source code from accidental user changes,
- and
- off-line syntax checking.
- Precompiling does not imply faster execution
- because in Lua chunks are always compiled into bytecodes before being executed.
- .B luac
- simply allows those bytecodes to be saved in a file for later execution.
- Precompiled chunks are not necessarily smaller than the corresponding source.
- The main goal in precompiling is faster loading.
- .LP
- In the command line,
- you can mix
- text files containing Lua source and
- binary files containing precompiled chunks.
- .B luac
- produces a single output file containing the combined bytecodes
- for all files given.
- Executing the combined file is equivalent to executing the given files.
- By default,
- the output file is named
- .BR luac.out ,
- but you can change this with the
- .B \-o
- option.
- .LP
- Precompiled chunks are
- .I not
- portable across different architectures.
- Moreover,
- the internal format of precompiled chunks
- is likely to change when a new version of Lua is released.
- Make sure you save the source files of all Lua programs that you precompile.
- .LP
- .SH OPTIONS
- .TP
- .B \-l
- 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
- loads
- .B luac.out
- and lists its contents.
- Use
- .B \-l \-l
- for a full listing.
- .TP
- .BI \-o " file"
- output to
- .IR file ,
- instead of the default
- .BR luac.out .
- (You can use
- .B "'\-'"
- for standard output,
- but not on platforms that open standard output in text mode.)
- The output file may be one of the given files because
- all files are loaded before the output file is written.
- Be careful not to overwrite precious files.
- .TP
- .B \-p
- 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.
- If no files are given, then
- .B luac
- loads
- .B luac.out
- and tests its contents.
- No messages are displayed if the file loads without errors.
- .TP
- .B \-s
- 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.
- In particular,
- line numbers and names of local variables are lost.
- .TP
- .B \-v
- show version information.
- .TP
- .B \-\-
- stop handling options.
- .TP
- .B \-
- stop handling options and process standard input.
- .SH "SEE ALSO"
- .BR lua (1)
- .br
- The documentation at lua.org.
- .SH DIAGNOSTICS
- Error messages should be self explanatory.
- .SH AUTHORS
- R. Ierusalimschy,
- L. H. de Figueiredo,
- W. Celes
- .\" EOF
|