primary |
Lua is a programming language originally designed for extending
applications, but also frequently used as a general-purpose, stand-alone
language. Lua combines simple procedural syntax (similar to Pascal) with
powerful data description constructs based on associative arrays and
extensible semantics. Lua is dynamically typed, interpreted from bytecodes,
and has automatic memory management with garbage collection, making it
ideal for configuration, scripting, and rapid prototyping.
A fundamental concept in the design of Lua is to provide meta-mechanisms
for implementing features, instead of providing a host of features directly
in the language. For example, although Lua is not a pure object-oriented
language, it does provide meta-mechanisms for implementing classes and
inheritance. Lua's meta-mechanisms bring an economy of concepts and keep
the language small, while allowing the semantics to be extended in
unconventional ways. Extensible semantics is a distinguishing feature of
Lua.
Lua is implemented as a small library of C functions, written in ANSI C,
and compiles unmodified in all known platforms. The implementation goals
are simplicity, efficiency, portability, and low embedding cost.
|