1996/06/01 by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes Filho · 1 citation
Computer Science · #Advanced Database Systems and Queries #Advanced Software Engineering Methodologies #Logic, programming, and type systems
paper · doi:10.1002/(sici)1097-024x(199606)26:6<635::aid-spe26>3.0.co;2-p
openalex publication_date 1996/06/01 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/29
This paper describes Lua, a language for extending applications. Lua combines procedural features with powerful data description facilities, by using a simple, yet powerful, mechanism of tables . This mechanism implements the concepts of records, arrays and recursive data types (pointers), and adds some object-oriented facilities, such as methods with dynamic dispatching. Lua presents a mechanism of fallbacks that allows programmers to extend the semantics of the language in some unconventional ways. As a noteworthy example, fallbacks allow the user to add different kinds of inheritance to the language. Currently, Lua is being extensively used in production for several tasks, including user configuration, general-purpose data-entry, description of user interfaces, storage of structured graphical metafiles, and generic attribute configuration for finite element meshes.