Lua (programski jezik)

Lua je jednostavan, reflektivan, imperativni i funkcionalni programski jezik, dizajniran kao skript jezik sa proširivom semantikom kao primarnim ciljem. Samo ime jezika potiče od portugalske riječi lua što znači mjesec. Jezik je kreiran 1993. godine, a licenciran je pod MIT licencom (do verzije 5.0 korištena je BSD licenca).

Lua posjeduje relativno jednostavan C API u poređenju sa ostalim skript jezicima. Lua i JavaScript imaju vrlo sličnu semantiku uprkos velikim razlikama u sintaksi. Po dizajnu, Lua je vrlo slična i programskom jeziku Icon. Ima široku primjenu u industriji video igara, ali i u nekim komercijalnim kao i nekomercijalnim aplikacijama.

Lua programi se ne interpretiraju direktno iz tekstualne Lua datoteke, već se kompajliraju na bajtkod koji se potom izvršava na Lua virtuelnoj mašini. Korištenjem minimalnog skupa tipova podataka, Lua pokušava da balansira između veličine i moći.

 Primjer koda 
Klasični "Pozdrav svijete" program:
print("Pozdrav svijete!")

ili:
io.write("Pozdrav svijete!\n")

print() dodaje karakter za prelaz u novi red, za razliku od io.write() gdje se on mora dodati u samom kodu.

-- Komentar u Lui počinje sa duplom crticom i završava sa krajem linije.
--[[ Višelinijski stringovi i komentari
     se obeležavaju duplim uglastim zagradama.]]

Faktorijel je primjer rekurzivne funkcije:
function faktorijel(n)
  if n == 0 then
    return 1
  else
    return n * faktorijel(n - 1)
  end
end                                     
Drugi oblik za funkciju faktorijela potiče od Luinog načina izračuna logičkog operatora, po kome Lua vraća vrijednost posljednjeg izračunatog operanda u izrazu:
function faktorijel2(n)             
  return n == 0 and 1 or n * faktorijel2(n - 1)
end

 Također pogledajte 
 JavaScript
 Icon
 C

 Vanjski linkovi 
 Zvanični sajt
 Sajt korisnika Lue 

Kategorija:Programski jezici