Lua
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.
Logo języka | |
Pojawienie się |
1993 |
---|---|
Aktualna wersja stabilna |
5.4.7 |
Twórca |
Roberto Ierusalimschy, Waldemar Celes, Luiz Henrique de Figueiredo |
Licencja | |
Platforma sprzętowa | |
Platforma systemowa |
wieloplatformowy |
Strona internetowa |
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
edytujPierwszy program – hello world
edytujprint("Hello World!")
Wynik działania programu:
Hello World!
Instrukcja if
edytujzmienna = 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
edytujfor 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
edytujprint( "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
edytujfunction 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- Wikipedia:Lua – o zastosowaniu Lua w Wikipedii i innych projektach Wikimedia
- Roblox prosta platforma do tworzenia gier w języku Lua
Uwagi
edytuj- ↑ Często, błędnie pisana LUA; Nazwa ta nie jest akronimem.
Przypisy
edytuj- ↑ LuaBind. (ang.).
- ↑ 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, DOI: 10.1145/1238844.1238846, ISBN 978-1-59593-766-7 [dostęp 2021-11-08] (ang.).
Linki zewnętrzne
edytuj- Oficjalna strona internetowa języka Lua
- Lua Users, społeczność użytkowników Lua
- Lua Forum
- Lua Rocks, repozytorium bibliotek jęz. Lua
- Zastosowania języka Lua. luaforge.net. [zarchiwizowane z tego adresu (2007-02-02)].