luajit - Man Page

Just-In-Time Compiler for the Lua Language

Examples (TL;DR)

Synopsis

luajit [options]... [script [args]...]

Web Site

https://luajit.org

Description

This is the command-line program to run Lua programs with LuaJIT.

LuaJIT is a just-in-time (JIT) compiler for the Lua language. The virtual machine (VM) is based on a fast interpreter combined with a trace compiler. It can significantly improve the performance of Lua programs.

LuaJIT is API- and ABI-compatible with the VM of the standard Lua 5.1 interpreter. When embedding the VM into an application, the built library can be used as a drop-in replacement.

Options

-e chunk

Run the given chunk of Lua code.

-l library

Load the named library, just like require("library").

-b ...

Save or list bytecode. Run without arguments to get help on options.

-j command

Perform LuaJIT control command (optional space after -j).

-O[opt]

Control LuaJIT optimizations.

-i

Run in interactive mode.

-v

Show LuaJIT version.

-E

Ignore environment variables.

--

Stop processing options.

-

Read script from stdin instead.

After all options are processed, the given script is run. The arguments are passed in the global arg table.

Interactive mode is only entered, if no script and no -e option is given. Interactive mode can be left with EOF (Ctrl-Z).

Examples

luajit hello.lua world

Prints "Hello world", assuming hello.lua contains:
 print("Hello", arg[1])

luajit -e "local x=0; for i=1,1e9 do x=x+i end; print(x)"

Calculates the sum of the numbers from 1 to 1000000000.
And finishes in a reasonable amount of time, too.

luajit -jv -e "for i=1,10 do for j=1,10 do for k=1,100 do end end end"

Runs some nested loops and shows the resulting traces.

See Also

More details in the provided HTML docs or at: https://luajit.org
More about the Lua language can be found at: https://lua.org/docs.html

lua(1)

Info

LuaJIT documentation