Misplaced Pages

Lua (programming language)

Article snapshot taken from[REDACTED] with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

This is an old revision of this page, as edited by Nikai (talk | contribs) at 07:41, 28 April 2004 (+de). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Revision as of 07:41, 28 April 2004 by Nikai (talk | contribs) (+de)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

The Lua (pronouced LOO-ah or /lua/ in SAMPA) programming language is a lightweight imperative/procedural language, designed as glue language with extensible semantics as a primary goal.

Lua was created by the Computer Graphics Technology Group of the Pontifical Catholic University of Rio de Janeiro in Brazil in 1993. It is released as free software, versions before 5.0 were released under BSD-like license terms, which are non-copyleft. From version 5.0 Lua uses the MIT License.

Lua has been used in many commercial applications (e.g., in LucasArts' Escape from Monkey Island adventure game and robot control software). Its closest relative in the family of programming languages is perhaps the Icon programming language, although it could also be compared to Python in its emphasis on ease of use for non-programmers.

Lua has a compact design, and this is evident from the fact that it supports only one data structure, the table. Tables can be used as arrays, sets, hashtables, lists or records, and can also simulate namespaces. There is a similar level of simplicity in Lua's atomic datatypes -- all arithmetic is done in double-precision floating point, for example (however this can be changed to single precision floating point or integer arithmetic). The language's semantics can be extended by redefining certain built in operations on tables, and Lua also supports higher-order functions and garbage collection. It is possible to write object-oriented programs in Lua by combining all these features.

Lua programs are translated into bytecode and interpreted. Although Lua is usable as a stand-alone language, it is primarily designed to be used as an extension language or scripting language within programs written in C. In this respect, it is similar to Tcl. The Lua interpreter can be accessed through a small C library, which includes both the interpreter and an API for accessing its runtime state from a host C program. The API allows different parts of a program to be written in C and Lua and gives two-way access to variables and functions across the languages (i.e., a function in Lua can call a function in C, and vice versa).

External links


In Roman mythology, Lua was the goddess the soldiers sacrificed captured weapons to. Lua also means 'moon' in Portuguese (from Latin 'luna'), which is what the programming language is named after.

Lua (programming language) Add topic