Пређи на садржај

Vojna Enciklopedija:Луа

Izvor: Vojna Enciklopedija
(разл) ← Старија измена | Тренутна верзија (разл) | Новија измена → (разл)

Шаблон:Програмски језик-лат

Луа је једноставан, рефлективан, императивни и функционални програмски језик, дизајниран као скрипт језик са проширивом семантиком као примарним циљем. Само име језика потиче од португалске речи луа што значи месец. Језик је креиран 1993. године, а лиценциран је под МИТ лиценцом (до верзије 5.0 коришћена је БСД лиценца).

Луа поседује релативно једноставан C (програмски језик)| АПИ у поређењу са осталим скрипт језицима. Луа и ЈаваСцрипт имају врло сличну семантику упркост великим разликама у синтакси. По дизајну, Луа је врло слична и програмском језику Ицон. Има широку примену у индустрији видео-игара, али и у неким комерцијалним као и некомерцијалним апликацијама.

Луа програми се не интерпретирају директно из текстуалне Луа датотеке, већ се компајлирају на бајткод који се потом извршава на Луа виртуелној машини. Коришћењем минималног скупа типова података, Луа покушава да балансира између величине и моћи.

Пример кода

Класични "Поздрав свете" програм:

print("Pozdrav svete!")


или:

io.write("Pozdrav svete!\n")


принт() додаје карактер за прелаз у нови ред, за разлику од ио.wрите() где се он мора додати у самом коду.

-- 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.]]

Факторијел је пример рекурзивне функције:

function faktorijel(n)
  if n == 0 then
    return 1
  else
    return n * faktorijel(n - 1)
  end
end

Други облик за функцију факторијела потиче од Луиног начина израчуна логичког оператора, по коме Луа враћа вредност последње израчунатог операнда у изразу:

function faktorijel2(n) 
  return n == 0 and 1 or n * faktorijel2(n - 1)
end

Види још

Спољашње везе