Na vyf jaar se ontwikkeling, 'n paar dae gelede die bekendstelling van die nuwe weergawe van Lua 5.4 aangebied, wat 'n kompakte en vinnige programmeertaal vir skripte is wat wyd gebruik word as 'n ingebedde taal.
Lua kombineer eenvoudige prosedurele sintaksis met kragtige vermoëns van die beskrywing van data deur die gebruik van assosiatiewe skikkings en uitbreidbare taalsemantiek. Lua gebruik dinamiese skryfwerk; taalkonstruksies word omgeskakel na bykode wat bo-op 'n virtuele logboekmasjien loop met 'n outomatiese vullisversamelaar.
Wat is nuut in Lua 5.4?
In hierdie nuwe weergawe van die taal kan ons sien dat dit opval 'n nuwe manier van vullisversamelaar, wat die voorheen beskikbare inkrementele vullisversamelingsmodus aanvul.
Die nuwe manier impliseer 'n meer gereelde bekendstelling van 'n korter spoor, wat slegs voorwerpe wat onlangs geskep is, dek. 'N Volledige deurkruising van alle voorwerpe word slegs uitgevoer as die gewenste geheueverbruik-aanwysers na 'n kort kruip nie bereik kon word nie. Hierdie benadering maak hoër prestasie en laer geheueverbruik moontlik in 'n situasie om 'n groot aantal voorwerpe op te berg wat vir 'n kort tydjie leef.
'N Ander verandering wat opvallend is van Lua 5.4, is die vermoë om konstantes te definieer met die "konst" attribuut. Sulke veranderlikes kan net een keer toegeken word en na die initialisering kan dit nie meer verander word nie.
Ook dit die nuwe ondersteuning vir veranderlikes word ook uitgelig «Word gesluit", wat toegeken word met behulp van die «geslote» attribuut en lyk soos konstante plaaslike veranderlikes (met die const-attribuut), wat van hulle verskil deurdat die waarde gesluit word (die "__close" -metode word genoem) in enige uitset van die sigbaarheidsgebied.
Die soort "Userdata", wat die vermoë bied om enige C-data in Lua-veranderlikes op te slaan ('n blok data in die geheue voorstel of 'n C-wyser bevat), kan nou veelvoudige waardes bevat (het verskeie metabelle).
Verder, 'n nuwe semantiek word in Lua 5.4 voorgestel om heelgetalle in »vir« lusse op te tel. Die aantal iterasies word voor die begin van die lus bereken, wat die oorloop van die veranderlike en lus vermy. As die aanvanklike waarde groter is as die limietwaarde, word 'n fout gegenereer.
'N Waarskuwingstelsel is bygevoeg, wat met behulp van die waarskuwingsuitdrukking bepaal word en, anders as foute, nie die daaropvolgende programuitvoering beïnvloed nie.
Van die ander veranderinge wat opval:
- Ontfouting van inligting oor funksie-argumente en terugkeerwaardes is bygevoeg in die "terugkeer" -operateur.
- Die funksies vir die omskakeling van snare in getalle is na die "snare" -biblioteek geskuif.
- Die geheue-toewysingsfunksie-oproep kan nou misluk as die geheue-blokgrootte verminder word.
- Ondersteuning bygevoeg vir 'n nuwe '% p'-formaat spesifiseerder vir die' string.format'-funksie
- Die utf8-biblioteek bied ondersteuning vir karakterkodes met getalle tot 2 ^ 31.
- 'N Nuwe opsionele' init '-argument is by die' string.gmatch'-funksie gevoeg, wat bepaal vanaf watter posisie die soektog moet begin (standaard begin met 1 karakter).
- Nuwe funksies 'lua_resetthread' bygevoeg (stel die draad weer in, maak die hele oproepstapel skoon en sluit alle veranderlikes "om te sluit") en 'coroutine.close'
Hoe installeer u Lua op Linux?
As gevolg van die groot gewildheid van die taal die tolk word in die meeste Linux-verspreidings aangetref.
om diegene wat gebruikers is van Debian, Ubuntu, Linux Mint of enige stelsel wat hieruit verkry wordOns hoef slegs 'n terminaal te open en die volgende opdrag daarin uit te voer:
sudo apt install lua5.4
As hulle is gebruikers van Arch Linux, Manjaro, Antergos of enige verspreiding verkry uit Arch Linux, kan ons die tolk vanaf die AUR-bewaarplekke installeer, hiervoor hoef ons net te tik:
yay -S lua
Terwyl vir Diegene wat gebruikers is van CentOS, RHEL, Fedora of enige verspreiding wat hieruit verkry word, kan ons dit installeer met:
sudo dnf install lua
En gereed daarmee, ek is reeds geïnstalleer.
Wees die eerste om te kommentaar lewer