Lua

Z Wikipedii, wolnej encyklopedii
Lua
Logo języka Lua
Logo języka
Pojawienie się

1993

Aktualna wersja stabilna

5.4.6
(14 maja 2023) [±]

Twórca

Roberto Ierusalimschy, Waldemar Celes, Luiz Henrique de Figueiredo

Licencja

MIT

Platforma sprzętowa

wieloplatformowy

Platforma systemowa

wieloplatformowy

Strona internetowa

Lua[a] (port. lua, księżyc) – lekki, skryptowy język programowania, zaprojektowany do wbudowania do większych aplikacji by rozszerzyć ich funkcje, często bywa też używany jako samodzielny język. Lua wiąże w sobie prostą składnię procedury (podobną do Pascala) z konstrukcjami opisu danych opartymi na tablicach asocjacyjnych i rozszerzalnej semantyce.

Język ten zaimplementowany jest jako mała biblioteka języka C, napisana według standardu ANSI C. Celami implementacji są: prostota, wydajność i przenośność kodu.

Istnieje wiele modyfikacji i nakładek na Lua. Jedną z nich jest LuaBind[1].

Język programowania Lua został stworzony w 1993 roku przez Roberto Ierusalimschy’ego, Luiza Henrique de Figueiredo i Waldemara Celes, którzy wchodzili w skład instytutu Tecgraf, zajmującego się oprogramowaniem graficznym na Pontifícia Universidade Católica do Rio de Janeiro (PUC-Rio) w Brazylii[2].

Przykłady[edytuj | edytuj kod]

Pierwszy program – hello world[edytuj | edytuj kod]

print("Hello World!")

Wynik działania programu:

Hello World!

Instrukcja if[edytuj | edytuj kod]

zmienna = 15 --Zmienna zdeklarowana na potrzeby przykładu

if ( zmienna == 15 ) then
    print( "warunek spelniony" )
else
    print( "warunek niespelniony" )
end

Wynik działania programu:

warunek spelniony

Podstawowa pętla – for[edytuj | edytuj kod]

for i = 1, 10 do
   print( tostring( i ) ) --Funkcja tostring( ) zamienia podaną wartość na typ string
end

Wynik działania programu:

1 2 3 4 5 6 7 8 9 10

Podstawowa interakcja z użytkownikiem[edytuj | edytuj kod]

print( "Czesc, jak masz na imie?\n" ) --\n to oznaczenie nowej linii
imie = io.read( ) --Funkcja io.read( ) oczekuje, aż użytkownik coś wpisze, a następnie to zwraca
print( "Czesc, " .. imie .. "." ) --Operator .. łączy ze sobą 2 dane typu string

Wynik działania programu:

Czesc, jak masz na imie?
[Tutaj oczekuje na wpisanie imienia]
Czesc, [imię].

Proste użycie funkcji[edytuj | edytuj kod]

function funkcja(parametr1, parametr2) --Linia deklarująca funkcję

   return parametr1 * parametr2 --Słowo kluczowe "return" powoduje zwrócenie wartości przez funkcję

end

print(tostring(funkcja(10,5))) --Wyświetlanie wyniku (50)

Wynik działania programu:

50

Zobacz też[edytuj | edytuj kod]

  • Wikipedia:Lua – o zastosowaniu Lua w Wikipedii i innych projektach Wikimedia
  • Roblox prosta platforma do tworzenia gier w języku Lua

Uwagi[edytuj | edytuj kod]

  1. Często, błędnie pisana LUA; Nazwa ta nie jest akronimem.

Przypisy[edytuj | edytuj kod]

  1. LuaBind. (ang.).
  2. Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes, The evolution of Lua, „Proceedings of the third ACM SIGPLAN conference on History of programming languages”, San Diego California: ACM, 2007, DOI10.1145/1238844.1238846, ISBN 978-1-59593-766-7 [dostęp 2021-11-08] (ang.).

Linki zewnętrzne[edytuj | edytuj kod]