Lua 5.4 estas ĉi tie kaj jen ĝiaj ŝanĝoj kaj novaĵoj

Post kvin jaroj da disvolviĝo, antaŭ kelkaj tagoj la lanĉo de la nova versio de Lua 5.4 estis prezentita, kiu estas kompakta kaj rapida skripta programlingvo vaste uzata kiel enigita lingvo.

Lua kombinas simplan procedan sintakson kun potencaj kapabloj de datuma priskribo per la uzo de asociaj tabeloj kaj etendebla lingva semantiko. Lua uzas dinamika skribado; lingvaj konstruaĵoj estas konvertitaj al bajtokodo, kiu funkcias aldone al protokola virtuala maŝino kun aŭtomata rubujo.

Kio nova en Lua 5.4?

En ĉi tiu nova versio de la lingvo, ni povas trovi, ke ĝi elstaras nova reĝimo de rubforigisto, kiu kompletigas la antaŭe haveblan pliigan modon de forĵetaĵa rubo.

La nova maniero implicas pli oftan lanĉon de pli mallonga spuro, kiu kovras nur ĵus kreitajn objektojn. Plena rampado de ĉiuj objektoj plenumiĝas nur se, post mallonga rampado, ne eblis atingi la deziratajn memorkonsumajn indikilojn. Ĉi tiu aliro ebligas pli altan rendimenton kaj malpli grandan memorkonsumon en situacio de stokado de granda nombro da objektoj, kiuj vivas dum mallonga tempo.

Alia ŝanĝo, kiu elstaras de Lua 5.4, estas la kapablo difini konstantojn difinitajn per la atributo "const". Tiaj variabloj povas esti atribuitaj nur unufoje kaj post komencigo ili ne plu povas esti ŝanĝitaj.

Ankaŭ tio la nova subteno por variabloj ankaŭ estas reliefigita «Esti fermita», kiu estas atribuita per la atributo «fermita» kaj similas al konstantaj lokaj variabloj (kun la atributo const), kiuj diferencas de ili per tio, ke la valoro estas fermita (la metodo "__fermi" nomiĝas) en iu ajn eliro de la videbla areo.

La speco de "Uzantodatumoj", kiu disponigas la kapablon stoki iujn ajn C-datenojn en Lua-variabloj (reprezentas blokon de datenoj en memoro aŭ enhavas C-montrilon), nun povas enhavi plurajn valorojn (havas plurajn metatablojn).

Aliflanke, nova semantiko estas proponita en Lua 5.4 por listigi entjerojn en »por« bukloj. La nombro de ripetoj estas kalkulita antaŭ la komenco de la buklo, kio evitas superflui la variablon kaj bukli. Se la komenca valoro estas pli granda ol la lima valoro, eraro estas generita.

Averta sistemo estis aldonita, kiu estas determinita per la averta esprimo kaj, male al eraroj, ne influas postan programekzekuton.

El la aliaj ŝanĝoj, kiuj elstaras:

  • Elpurigaj informoj pri funkciaj argumentoj kaj revenaj valoroj estis aldonitaj en la operatoro "reveno".
  • La funkcioj por konverti ĉenojn al nombroj estis movitaj al la biblioteko "ĉenoj".
  • La alvoko de funkcio de memora atribuo nun povas malsukcesi se la grandeco de memora bloko reduktiĝas.
  • Aldonita subteno por nova formato '% p' ​​al la funkcio 'string.format'
  • La utf8-biblioteko provizas subtenon por signokodoj kun nombroj ĝis 2 ^ 31.
  • Nova laŭvola argumento 'init' estis aldonita al la funkcio 'string.gmatch', kiu determinas de kiu pozicio komenci la serĉadon (defaŭlte, komencante per 1 signo).
  • Aldonis novajn funkciojn 'lua_resetthread' (reagordi la fadenon, forigi la tutan alvokan stakon kaj fermi ĉiujn variablojn "por fermi") kaj 'coroutine.close'

Kiel instali Lua en Linukso?

Pro sia granda populareco de la lingvo ĝia interpretilo troviĝas en plej multaj Linuksaj distribuoj.

para tiuj, kiuj estas uzantoj de Debian, Ubuntu, Linukso Mint aŭ iu ajn sistemo derivita de ĉi tiuj, ni nur devas malfermi terminalon kaj plenumi la jenan komandon en ĝi:

sudo apt install lua5.4

Se ili estas uzantoj de Arch Linukso, Manjaro, Antergos aŭ iu ajn distribuo derivita de Arch Linukso, ni povas instali la interpretilon de la deponejoj AUR, por tio ni nur devas tajpi:

yay -S lua

Dum Kiuj estas uzantoj de CentOS, RHEL, Fedora aŭ iu ajn distribuo derivita de ĉi tiuj, ni povas instali ĝin per:

sudo dnf install lua

Kaj preta kun ĝi, mi jam estas instalita.


La enhavo de la artikolo aliĝas al niaj principoj de redakcia etiko. Por raporti eraron alklaku Ĉi tie.

Estu la unua por komenti

Lasu vian komenton

Via retpoŝta adreso ne estos eldonita. Postulita kampojn estas markita per *

*

*

  1. Respondeculo pri la datumoj: Miguel Ángel Gatón
  2. Celo de la datumoj: Kontrola SPAM, administrado de komentoj.
  3. Legitimado: Via konsento
  4. Komunikado de la datumoj: La datumoj ne estos komunikitaj al triaj krom per laŭleĝa devo.
  5. Stokado de datumoj: Datumbazo gastigita de Occentus Networks (EU)
  6. Rajtoj: Iam ajn vi povas limigi, retrovi kaj forigi viajn informojn.