Lua (programski jezik)

Sa Wikipedije, slobodne enciklopedije
Idi na: navigacija, traži
Question book-new.svg Ovaj članak ili neka od njegovih sekcija nije dovoljno potkrijepljena izvorima (literatura, web stranice ili drugi izvori).
Sporne rečenice i navodi bi mogli, ukoliko se pravilno ne označe validnim izvorima, biti obrisani i uklonjeni. Pomozite Wikipediji tako što ćete navesti validne izvore putem referenci, te nakon toga možete ukloniti ovaj šablon.
Lua
Lua logo
Pojavio se 1993

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[uredi | uredi izvor]

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[uredi | uredi izvor]

Vanjski linkovi[uredi | uredi izvor]


Commons logo
U Wikimedijinom spremniku se nalazi još materijala vezanih uz: