Lua 5.4

Eftir tveggja ára þróun, þann 29. júní, var ný útgáfa af Lua forritunarmálinu, 5.4, gefin út hljóðlega og hljóðlega.

Lua er einfalt, túlkað forritunarmál sem auðvelt er að samþætta inn í forrit. Vegna þessara eiginleika er Lua mikið notað sem tungumál til að útvíkka eða lýsa uppsetningu forrita (sérstaklega tölvuleikja). Lua er dreift undir MIT leyfinu.

Fyrri útgáfan (5.3.5) var gefin út 10. júlí 2018.

Helstu breytingar í nýju útgáfunni

  • ný kynslóð sorphirðu. Í collectgarbage fallinu hafa setpause og setstepmul færibreyturnar verið úreltar og mælt er með stigvaxandi færibreytunni í staðinn;

  • ný aðgerð til að gefa út viðvörunarviðvaranir með getu til að slökkva á skjá þeirra;

  • nýja útfærslan á math.random notar xoshiro256** reikniritið í stað þess sem fylgir libc og frumstillir rafallinn með slembitölu;

  • fastar breytur;

  • „á að loka“ breytur eru staðbundnir fastar sem __close aðferðin er keyrð fyrir þegar farið er út úr umfanginu;

  • ný aðgerð lua_resettthread - hreinsar stafla og lokar öllum „lokuðum“ breytum;

  • ný aðgerð coroutine.close - lokar tilgreindri coroutine og öllum „lokuðum“ breytum hennar;

  • notendagögn geta innihaldið sett af gildum sem vísitölu nálgast. Nýjar aðgerðir hafa verið kynntar til að vinna með þeim: lua_newuserdatauv, lua_setiuservalue og lua_getiuservalue;

  • Villuleitarupplýsingar um færibreytur og skilgildi aðgerða eru tiltækar;

  • ef heiltöluvísitala er notuð í for-lykkju og yfirfall á sér stað, endar lykkjan;

  • valkvæðum rökstuðningi hefur verið bætt við string.gmatch fallið, sem tilgreinir frávik frá upphafi strengsins til að leita að samsvörun;

  • Aðgerðir til að umbreyta strengjum óbeint í tölur hafa verið færðar í strengasafnið og hegðun þeirra hefur breyst. Til dæmis er niðurstaða aðgerðarinnar "1" + "2" nú heiltala frekar en flottala;

  • í minnisúthlutunaraðgerðinni getur villa komið upp þegar minnkun er minnkað;

  • nýtt sniðtákn í string.format fallinu - %p (fyrir ábendingar);

  • utf8 bókasafnið tekur við stafakóðum allt að 2³¹ (ef sérstakur fáni er tilgreindur, án þess eru aðeins kóðar allt að 0x10FFFF leyfðir og staðgöngumátar eru ekki leyfðar);

  • heiltölufastar utan gildissviðsins eru breytt í fljótandi tölur (áður átti bitaklipping sér stað);

  • __lt metaaðferðin er ekki lengur notuð til að líkja eftir __le metaaðferðinni; ef nauðsyn krefur verður að tilgreina __le metaaðferðina sérstaklega;

  • ekki er hægt að búa til merki fyrir goto-yfirlýsingu ef merki með sama nafni er þegar til í núverandi gildissviði (jafnvel þótt það hafi verið skilgreint í ytra umfangi);

  • __gc metaaðferðin getur verið meira en bara fall. Ef tilraun til að kalla á aðferð mistekst verður viðvörun prentuð;

  • prentfallið kallar ekki á tostring fyrir hverja breytu, heldur notar eigin innri umbreytingar;

  • io.lines aðgerðin skilar setti af fjórum gildum í stað eins; til að líkja eftir gömlu hegðuninni skaltu setja símtalið innan sviga ef þú ert að senda það sem færibreytu í annað fallkall.

Heimild: linux.org.ru

Bæta við athugasemd