[Lunar-commits] CVS: moonbase/compilers/lua DETAILS,NONE,1.1
sofar at lunar-linux.org
Thu Apr 29 08:01:04 GMT 2004
Update of /var/cvs/lunar/moonbase/compilers/lua
In directory dbguin.lunar-linux.org:/tmp/cvs-serv421/compilers/lua
Adding ion-2 and dependency lua.
--- NEW FILE: DETAILS ---
SHORT="light-weight programming language for extending applications"
cat << EOF
Lua is a powerful light-weight programming language designed
for extending applications. Lua is also frequently used as a
general-purpose, stand-alone language. Lua is free software.
Lua combines simple procedural syntax 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 a language engine that you can embed into your application. This
means that, besides syntax and semantics, Lua has an API that allows
the application to exchange data with Lua programs and also to extend
Lua with C functions. In this sense, Lua can be regarded as a language
framework for building domain-specific languages.
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. The result is a fast language engine with small footprint,
making it ideal in embedded systems too.
Lua is designed and implemented by a team at Tecgraf, the Computer
Graphics Technology Group of PUC-Rio (the Pontifical Catholic University
of Rio de Janeiro in Brazil). Tecgraf is a laboratory of the Department
of Computer Science.
More information about the Lunar-commits