Lua (programmeringssprog)
- Denne artikel er om selve programmeringssproget Lua. Se Wikipedia:Lua for brugen af Lua på Wikipedia.
For alternative betydninger, se Lua. (Se også artikler, som begynder med Lua)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/c/cf/Lua-Logo.svg/220px-Lua-Logo.svg.png)
Lua (portugisisk for "måne") er et scriptprogrammeringssprog til integrering i programmer, med det formål at gøre det nemmere at videreudvikle dem. En af sprogets særlige egenskaber er scriptfortolkerens ringe størrelse.
Lua blev udviklet i 1993 af Roberto Ierusalimschy, Luiz Henrique de Figueiredo og Waldemar Celes fra Computer Graphics Technology Group ved Pontifícia Universidade Católica do Rio de Janeiro, et katolsk universitet i Rio de Janeiro, Brasilien. Lua er fri software og blev indtil version 5 udgivet under en BSD-licens, og fra version 5 under MIT-licensen.
Sproget anvendes ofte i computerspil. I kommercielle spil anvendes Lua eksempelvis i Heroes of Newerth, Heroes of Might and Magic V, Monkey Island 4, Spellforce, Far Cry, World of Warcraft, Microsoft Freelancer, Half-Life 2, Garry's Mod, The Settlers V, Parkan 2, Star Wars: Battlefront II og Company of Heroes, mens det fri software anvendes i eksempelvis Angband 3 (og varianterne ZAngband og ToME).
Programmer skrevet i Lua bliver før udførelsen oversat til byte-code. Selvom man kan skrive selvstændige programmer i Lua, er det primært tænkt som et scriptsprog til C-programmer, i denne forbindelse sammenligneligt med Tcl.
Lua-fortolkeren kan kaldes gennem et C-bibliotek, der også indeholder et API til kald af fortolkeren fra C-programmer på kørselstidspunktet. Gennem API'et kan forskellige dele af programmet skrives i C eller Lua, mens variabler og funktioner er tilgængelige i begge retninger (dvs. en funktion i Lua kan kalde en funktion i C, og omvendt).
Implementeringen af Lua er i ANSI-C, og der understøttes funktions- såvel som objektionsorienteret programmering.
Typiske koder
[redigér | rediger kildetekst]Her er nogle eksempler på nogle "scripts" skrevet i Lua.
Hello World:
print("Hello World!")
event
RegisterUnitEvent(ID, 1, "Navn_Effekt")
Litteratur (engelsk)
[redigér | rediger kildetekst]- Ierusalimschy, Roberto (2006), Programming in Lua (2. udgave), Lua.org, ISBN 85-903798-2-5 (Første udgave er tilgængelig online)
- Ierusalimschy, Roberto; Figueiredo, L. H.; Celes, W. (2006), Lua 5.1 Reference Manual, Lua.org, ISBN 85-903798-3-3
- Schuytema, P.; Manyen, M. (2005), Game Development with Lua, Charles River Media, ISBN 1-58450-404-8
Ekstern henvisning
[redigér | rediger kildetekst]- Officel hjemmeside (på engelsk og portugisisk)