Öt év fejlesztés után, néhány nappal ezelőtt bemutatták a Lua 5.4 új verziójának bevezetését, amely egy kompakt és gyors szkript programozási nyelv, amelyet széles körben használnak beágyazott nyelvként.
A Lua az egyszerű eljárási szintaxist és az erőteljes képességeket ötvözi asszociatív tömbök és kibővíthető nyelvi szemantika felhasználásával. Lua dinamikus írást használ; a nyelvi konstrukciókat bájtkódokká alakítják, amely egy napló virtuális gép tetején fut egy automatikus szemétgyűjtővel.
A Lua 5.4 újdonságai
A nyelv ezen új változatában megállapíthatjuk, hogy kiemelkedik a hulladékgyűjtő új működési módja, amely kiegészíti a korábban rendelkezésre álló inkrementális szemétgyűjtési módot.
Az új mód rövidebb nyom gyakoribb elindítását jelenti, amely csak a nemrégiben létrehozott objektumokra terjed ki. Az összes objektum teljes feltérképezése csak akkor történik meg, ha rövid bejárás után nem sikerült elérni a kívánt memóriafelhasználási mutatókat. Ez a megközelítés nagyobb teljesítményt és alacsonyabb memóriafelhasználást tesz lehetővé nagyszámú, rövid ideig élő tárgy tárolásának helyzetében.
Egy másik változás, amely kiemelkedik a Lua 5.4-ből, a az "const" attribútummal definiált állandók definiálásának képessége. Ilyen változókat csak egyszer lehet hozzárendelni, és inicializálás után már nem lehet őket megváltoztatni.
Az is a változók új támogatását is kiemelik «Bezárandó», amelyeket a «zárt» és a állandó lokális változókra hasonlítanak (a const attribútummal), amelyek abban különböznek tőlük, hogy az érték zárva van (a "__close" metódust hívják) a láthatósági terület bármely kimenetén.
A típus "Felhasználói adat", amely lehetővé teszi a C adatok Lua változókban történő tárolását (adattömböt képvisel a memóriában, vagy tartalmaz C mutatót), több értéket tartalmazhat (több metatáblájuk van).
Sőt, új szemantikát javasol a Lua 5.4 az egész számok felsorolására a »for« ciklusokban. Az iterációk számát a ciklus kezdete előtt kiszámoljuk, így elkerülhető a változó túlcsordulása és a ciklus. Ha a kezdeti érték nagyobb, mint a határérték, akkor hiba keletkezik.
Figyelmeztető rendszer került hozzá, amelyet a figyelmeztető kifejezés segítségével határozunk meg, és a hibákkal ellentétben nem befolyásolja a program későbbi végrehajtását.
A többi kiemelkedő változás közül:
- A függvény argumentumok és visszatérési értékek hibakeresési információi hozzáadódtak a "return" operátorhoz.
- A karakterláncok számokká alakításának funkciói átkerültek a "string" könyvtárba.
- A memóriaelosztási funkció hívása most meghiúsulhat, ha a memóriablokk méretét csökkentik.
- Támogatás hozzáadva egy új „% p” formátummeghatározót a „string.format” függvényhez
- Az utf8 könyvtár támogatja a legfeljebb 2 ^ 31 számú karakterkódokat.
- A „string.gmatch” függvényhez egy új opcionális „init” argumentum került, amely meghatározza, hogy melyik pozícióból kezdje a keresést (alapértelmezés szerint 1 karakterrel kezdődik).
- Új funkciók hozzáadva a 'lua_resetthread' (alaphelyzetbe állítja a szálat, törli a teljes hívásköteget és bezár minden változót "bezáráshoz") és a "coroutine.close"
Hogyan lehet a Lua-t Linuxra telepíteni?
A nyelv nagy népszerűsége miatt értelmezője megtalálható a legtöbb Linux disztribúción.
hogy azok, akik a Debian, az Ubuntu, a Linux Mint vagy bármely ezekből származó rendszer felhasználóiCsak meg kell nyitnunk egy terminált, és végre kell hajtanunk benne a következő parancsot:
sudo apt install lua5.4
Ha ők az Arch Linux, a Manjaro, az Antergos vagy az Arch Linuxból származó bármilyen terjesztés felhasználói, telepíthetjük a tolmácsot az AUR tárolókból, ehhez csak a következőket kell beírnunk:
yay -S lua
Míg az Azok, akik a CentOS, az RHEL, a Fedora vagy bármely ezekből származó terjesztés felhasználói, telepíthetjük:
sudo dnf install lua
És készen állok vele, már telepítve vagyok.