Lua (programmeringssprog)

Fra Wikipedia, den frie encyklopædi
Gå til: navigation, søg
Disambig bordered fade.svg For alternative betydninger, se Lua.

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 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 bytecode. 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 | redigér wikikode]

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 | redigér wikikode]

  • Schuytema, P.; Manyen, M. (2005), Game Development with Lua, Charles River Media, ISBN 1-58450-404-8 

Ekstern henvisning[redigér | redigér wikikode]