Ar ôl dwy flynedd o ddatblygu, rhyddhawyd fersiwn newydd o'r iaith raglennu Lua, 5.4, yn dawel ar Fehefin 29ain.
Mae Lua yn iaith raglennu syml a ddehonglir y gellir ei hymgorffori'n hawdd mewn cymwysiadau. Oherwydd y rhinweddau hyn, defnyddir Lua yn helaeth fel estyniad neu iaith ffurfweddu ar gyfer rhaglenni (yn enwedig gemau cyfrifiadurol). Dosbarthir Lua o dan drwydded MIT.
Rhyddhawyd y fersiwn flaenorol (5.3.5) ar 10 Gorffennaf, 2018.
Prif newidiadau yn y fersiwn newydd
Casglwr sbwriel cenhedlaeth newydd. Yn y ffwythiant collectgarbage, mae'r paramedrau setpause a setstepmul wedi'u darfod; argymhellir y paramedr cynyddrannol yn lle;
swyddogaeth newydd ar gyfer cyhoeddi rhybuddion rhybuddio gyda'r opsiwn i analluogi eu harddangos;
mae gweithrediad newydd o math.random yn defnyddio algorithm xoshiro256** yn lle'r un a ddarperir gan libc ac yn cychwyn y generadur gyda rhif ar hap;
newidynnau cyson;
Mae newidynnau "i'w-gau" yn gysonion lleol y mae'r dull __close yn cael ei weithredu ar eu cyfer wrth adael y cwmpas;
ffwythiant newydd lua_resetthread - yn clirio'r pentwr ac yn cau'r holl newidynnau "caeedig";
ffwythiant newydd coroutine.close - yn cau'r coroutine penodedig a'i holl newidynnau "caeedig";
Gall data defnyddiwr (userdata) gynnwys set o werthoedd y mae mynegai yn eu cyrchu. Cyflwynwyd swyddogaethau newydd ar gyfer gweithio gyda nhw: lua_newuserdatauv, lua_setiuservalue, a lua_getiuservalue;
mae gwybodaeth dadfygio am baramedrau a gwerthoedd dychwelyd ffwythiannau ar gael;
Os defnyddir mynegai cyfanrif mewn dolen for ac mae gorlif yn digwydd, mae'r ddolen yn terfynu;
Mae dadl ddewisol wedi'i hychwanegu at y ffwythiant string.gmatch, gan nodi'r gwrthbwyso o ddechrau'r llinyn i chwilio am gyfatebiaethau;
Mae ffwythiannau trosi llinyn-i-rif ymhlyg wedi cael eu symud i'r llyfrgell llinynnau, ac mae eu hymddygiad wedi newid. Er enghraifft, mae canlyniad y llawdriniaeth "1" + "2" bellach yn gyfanrif, nid yn rhif pwynt arnofiol;
Yn y swyddogaeth dyrannu cof, gall gwall ddigwydd wrth leihau bloc cof;
cymeriad fformatio newydd yn y ffwythiant string.format - %p (ar gyfer pwyntyddion);
Mae'r llyfrgell utf8 yn derbyn codau nodau hyd at 2³¹ (os nodir baner arbennig, hebddi dim ond codau hyd at 0x10FFFF sy'n cael eu caniatáu ac ni chaniateir dirprwyon);
Mae cysonion cyfanrifau sydd y tu allan i'r ystod yn cael eu trosi'n rhifau pwynt arnofiol (yn flaenorol, roedd cwtogi bitiau'n digwydd);
Ni ddefnyddir y meta-ddull __lt mwyach i efelychu'r meta-ddull __le; os oes angen, rhaid nodi'r meta-ddull __le yn benodol;
ni ellir creu label ar gyfer datganiad goto os oes label gyda'r un enw eisoes yn bodoli yn y cwmpas cyfredol (hyd yn oed os cafodd ei ddiffinio mewn cwmpas allanol);
Gall y meta-ddull __gc fod yn unrhyw beth o ffwythiant. Os bydd ymgais i alw'r dull yn methu, bydd rhybudd yn cael ei gyhoeddi;
Nid yw'r ffwythiant print yn galw tostring ar gyfer pob dadl, ond mae'n defnyddio ei drawsnewidiadau mewnol ei hun;
Mae'r ffwythiant io.lines yn dychwelyd set o bedwar gwerth yn lle un. I efelychu'r hen ymddygiad, amgáu'r alwad mewn cromfachau wrth ei rhoi yn ei le fel paramedr wrth alw ffwythiant arall.
Ffynhonnell: linux.org.ru
