Lua: Difference between revisions

Created page with "'''Lua''' {{Noexcerpt|({{IPAc-en|ˈ|l|uː|ə}} {{Respell|LOO|ə}}; from {{Langx|pt|lua}} {{IPA|pt|ˈlu(w)ɐ|}} meaning ''moon'')}} is a lightweight, high-level, multi-paradigm programming language designed mainly for embedded use in applications.<ref name="luaspe">{{cite journal|last1=Ierusalimschy|first1=..."
 
No edit summary
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Lua''' {{Noexcerpt|({{IPAc-en|ˈ|l||ə}} {{Respell|LOO|ə}}; from {{Langx|pt|[[wikt:lua#Portuguese|lua]]}} {{IPA|pt|ˈlu(w)ɐ|}} meaning ''[[moon]]'')}} is a [[Lightweight programming language|lightweight]], [[High-level programming language|high-level]], [[multi-paradigm programming language|multi-paradigm]] [[programming language]] designed mainly for [[Scripting language|embedded use]] in applications.<ref name="luaspe">{{cite journal|last1=Ierusalimschy|first1=Roberto|last2=de Figueiredo|first2=Luiz Henrique|last3=Filho|first3=Waldemar Celes|title=Lua—An Extensible Extension Language|journal=Software: Practice and Experience|date=June 1996|volume=26|issue=6|pages=635–652|doi=10.1002/(SICI)1097-024X(199606)26:6<635::AID-SPE26>3.0.CO;2-P|s2cid=61066194 |url=https://www.lua.org/spe.html|access-date=24 October 2015|url-access=subscription}}</ref> Lua is [[cross-platform software]], since the [[Interpreter (computing)|interpreter]] of [[Compiler|compiled]] [[bytecode]] is written in [[ANSI C]],<ref name=luaabout>{{cite web |url=https://www.lua.org/about.html#why |title=About Lua |publisher=Lua.org |access-date=2011-08-11}}</ref> and Lua has a relatively simple C application programming interface ([[API]]) to embed it into applications.<ref>{{cite magazine |last1=Takhteyev |first1=Yuri |date=21 April 2013 |url=https://www.foreignaffairs.com/articles/139332/yuri-takhteyev/from-brazil-to-wikipedia?page=2 |title=From Brazil to Wikipedia |magazine=[[Foreign Affairs]] |access-date=25 April 2013}}</ref>
[[Category:Software]]
{{Software
|name        = Lua
|type        = Library
|authors    = Roberto Ierusalimschy
|license    = [https://www.lua.org/license.html MIT]
|language    = ANSI C
}}
 
<blockquote>
 
"During the slow month of December, programmer Sam Lantinga finished making our user interface customizable via a lightweight programming language called Lua. Despite the fact Sam had explained it to the artists a number of times, the concept of a user-controlled interface didn’t make sense, but the designers and programmers assured us it would be great. Most of us couldn’t understand what was so wrong with the default interface that we now wanted to turn control of it over to the general public. Why let users control the interface? How much better could they make it? Wasn’t it clean enough?"
 
— John Staats, ''The WoW Diary''
</blockquote>
 
Lua (/ˈluːə/ ''LOO-ə''; from Portuguese: ''lua'' [ˈlu(w)ɐ] meaning moon) is a lightweight, high-level, multi-paradigm programming language designed mainly for embedded use in applications.[ Lua is cross-platform software, since the interpreter of compiled bytecode is written in ANSI C,and Lua has a relatively simple C application programming interface (API) to embed it into applications.
 
Lua originated in 1993 as a language for extending software applications to meet the increasing demand for customization at the time. It provided the basic facilities of most procedural programming languages, but more complicated or domain-specific features were not included; rather, it included mechanisms for extending the language, allowing programmers to implement such features. As Lua was intended to be a general embeddable extension language, the designers of Lua focused on improving its speed, portability, extensibility and ease-of-use in development.