Lua is actually an extension programming language built to supporting common procedural development with data description business

Moreover it provides great support for object-oriented programming, practical programs, and data-driven development. Lua will probably be made use of as an effective, light-weight scripting language for plan that needs one. Lua is applied as a library, written in clean C (that’s, within the usual subset of ANSI C and C++).

Being an expansion code, Lua does not have any idea of a «main» plan: it merely works embedded in a number customer, known as embedding regimen or simply the variety. This host system can invoke applications to perform a piece of Lua code, can create and study Lua factors, and may register C features becoming also known as by Lua code. With the use of C features, Lua can be increased to cope with a wide range of various domains, therefore creating customized programming languages revealing a syntactical platform. The Lua submission contains a sample variety program known as lua , which utilizes the Lua collection to provide a complete, stand-alone Lua interpreter.

Lua is free computer software, and is also provided as always with no assures, as stated with its license. The execution explained contained in this guide can be found at Lua’s recognized internet site, .


Like any more guide handbook, this document is actually dried out in spots. For a conversation associated with conclusion behind the style of Lua, see the technical documents offered by Lua’s web site. For a detailed introduction to development in Lua, discover Roberto’s book, Programming in Lua (Second model).

This area describes the lexis, the syntax, together with semantics of Lua. Put simply, this section describes which tokens are valid, how they may getting combined, and just what their own combinations imply.

The language constructs will be explained by using the normal lengthy BNF notation, which implies 0 or higher a’s, and [a] suggests a recommended a. Non-terminals tend to be found like non-terminal, keywords and phrases become revealed like kword, and other critical signs is shown like `=A?. The complete syntax of Lua are located in A§8 at the conclusion of this guide.

2.1 Lexical Conventions

Brands (also known as identifiers) in Lua are any sequence of characters, digits, and underscores, not starting with a digit. This coincides using concept of brands in most dialects. (the meaning of letter relies on the existing locale: any personality considered alphabetic by existing locale can be used in an identifier.) Identifiers are widely used to name factors and desk areas.

Lua is actually a case-sensitive language: and is a reserved word, but then and and tend to be two different, valid brands. As a meeting, names you start with an underscore accompanied by uppercase characters (eg _VERSION ) tend to be booked for internal over at this site international factors employed by Lua.

Exact chain is generally delimited by coordinating solitary or two fold quotes, and may retain the soon after C-like getaway sequences: ‘ \a ‘ (bell), ‘ \b ‘ (backspace), ‘ \f ‘ (kind feed), ‘ \n ‘ (newline), ‘ \r ‘ (carriage return), ‘ \t ‘ (horizontal tab), ‘ \v ‘ (vertical tab), ‘ \\ ‘ (backslash), ‘ \» ‘ (quotation level [double quote]), and ‘ \’ ‘ (apostrophe [single quote]). Furthermore, a backslash followed closely by a real newline causes a newline in the string. A character in a string can also be specified by its numerical importance making use of the get away sequence \ddd , in which ddd is a sequence of up to three decimal digits. (keep in mind that if a numerical getaway is usually to be followed by a digit, it needs to be conveyed making use of just three digits.) Strings in Lua can consist of any 8-bit value, including embedded zeros, which are specified as ‘ \0 ‘.