YouTip LogoYouTip

Lua Tutorial

# Lua Tutorial ![Image 2: lua](#) Lua is a lightweight scripting language, written in standard C and open-sourced. Its design purpose is to be embedded into applications to provide flexible extension and customization capabilities. Lua was developed in 1993 by a research group at the Pontifical Catholic University of Rio de Janeiro in Brazil. The group members were: Roberto Ierusalimschy, Waldemar Celes, and Luiz Henrique de Figueiredo. * * * ## Design Purpose Its design purpose is to be embedded into applications to provide flexible extension and customization capabilities. * * * ## Lua Features * **Lightweight**: It is written in standard C and open-sourced. After compilation, it is only a little over 100K, making it very easy to embed into other programs. * **Extensible**: Lua provides very easy-to-use extension interfaces and mechanisms: these functions are provided by the host language (usually C or C++), and Lua can use them as if they were built-in features. * **Other Features**: * Supports procedural programming and functional programming; * Automatic memory management; provides only one generic type, the table, which can be used to implement arrays, hash tables, sets, and objects; * Built-in pattern matching; closures; functions can also be treated as values; provides support for multithreading (coroutines, not OS-supported threads); * Through closures and tables, it can easily support key mechanisms needed for object-oriented programming, such as data abstraction, virtual functions, inheritance, and overloading. * * * ## Lua Application Scenarios * Game development * Standalone application scripts * Web application scripts * Extensions and database plugins such as: MySQL Proxy and MySQL WorkBench * Security systems, such as intrusion detection systems * * * ## First Lua Program Lua code files have the extension .lua. Next, we will use Lua to output "Hello World!" ## Example (Lua 5.3) print("Hello World!") [Run Example Β»](#) After running, "Hello, world!" will be displayed on the screen.
← Cpp Pointer To ClassCpp Inline Functions β†’