Lua is a powerful and fast programming language that is easy to learn and use and to embed into your application.
Lua is designed to be a lightweight embeddable scripting language. It is used for all sorts of applications, from games to web applications and image processing.
See the about page for details and some reasons why you should choose Lua.
See what Lua programs look and feel like in the live demo.
The official definition of the Lua language is given in the reference manual.
If you need to complement the standard Lua libraries to handle more complex tasks, the lua-users wiki lists many user-contributed addons for Lua, including tools, libraries, full distributions, and binaries for several platforms.
Try also LuaDist, a multi-platform distribution of Lua that includes batteries.
Use the live demo to play with Lua if you don't want to install anything on your computer.
To run Lua programs on your computer, you'll need a standalone Lua interpreter and perhaps some additional Lua libraries. Use your favorite text editor to write your Lua programs. Make sure to save your programs as plain text. If you want an IDE, try ZeroBrane Studio.
If you use Windows, try LuaDist, a multi-platform distribution of the Lua that includes batteries.
If you use Linux or Mac OS X, Lua is either already installed on your system or there is a Lua package for it. Make sure you get the latest release of Lua (currently 5.3.4).
Lua is also quite easy to build from source, as explained below.
Building from source
Here is a simple terminal session that downloads the current release of Lua and builds it in a Linux system:
curl -R -O http://www.lua.org/ftp/lua-5.3.4.tar.gz tar zxf lua-5.3.4.tar.gz cd lua-5.3.4 make linux testFor Mac OS X, use
To embed Lua into your program, you'll need Lua headers to compile your program and a Lua library to link with it. You'll also need a C or C++ compiler for your program, because the Lua headers and library are written in C. If you're getting a ready-made Lua package for your platform, you'll probably need the development package as well. Otherwise, just download Lua and add its source directory to your project.