Luau to język skryptowy, z którego korzystają twórcy w Roblox Studio. Jest to szybki, mały, bezpieczny, stopniowo typowany język osadzony, pochodzący z Lua 5.1.
Wsparcie w Studio
Edytor skryptów w Studio wspiera Luau z autouzupełnianiem, podświetlaniem składni, statycznym lintingiem, sprawdzaniem typów i analizą skryptów. Pokazuje również dokumentację i sygnatury funkcji dla członków Roblox Engine API.
Typy
Luau zawiera następujące typy danych:
- Nil reprezentuje nieistnienie lub pustkę. Różni się od jakiejkolwiek innej wartości lub typu danych.
- Liczby, lub double, reprezentują liczby zmiennoprzecinkowe podwójnej precyzji (64-bitowe).
- Ciągi to sekwencje znaków, takie jak litery, liczby i symbole.
- Enumy to stałe listy elementów.
Luau jest domyślnie typowany dynamicznie. Zmienne, parametry funkcji i wartości zwracane mogą być dowolnego typu danych. Pomaga to pisać kod szybciej, ponieważ nie musisz podawać typów dla każdego elementu danych. Możesz nadal zadeklarować konkretne typy dla zmiennych w Luau i włączyć ścisłe sprawdzanie typów, aby problemy z typami były oczywiste i łatwe do zlokalizowania.
Struktury danych
Możesz również zaimplementować następujące struktury danych, używając prymitywnych typów danych:
- Stosy to kolekcje Last-In-First-Out przedmiotów, które możesz zaimplementować za pomocą tabel.
- Kolejki to kolekcje First-In-First-Out przedmiotów, które możesz zaimplementować za pomocą tabel.
- Metatabele to tabele z zaawansowaną konfiguracją, które mogą osiągnąć funkcjonalności, takie jak przechowywanie par kluczy i wartości oraz obliczanie operacji arytmetycznych.
Cechy
W Luau zmienne i funkcje mogą mieć globalny i lokalny zakres w skrypcie. Luau ma logiczne, relacyjne i złożone operatory. Możesz używać struktur sterujących i funkcji, aby kontrolować, kiedy Luau wykonuje kod. Wiele operatorów i przypisań zmiennych wykonuje wymuszanie typów, aby zmienić wartości na typy, których Luau się spodziewa.