Esitatud on uus programmikeele AWK rakenduse väljaanne projektist GNU — Gawk 5.2.0. AWK loodi 1970. aastatel ning ei ole märkimisväärseid muudatusi läbi teinud alates 1980. aastate keskpaigast, kus loodi keele põhikonstruktsioon, mis on võimaldanud säilitada keele algupärast stabiilsust ja lihtsust viimased paar aastakümmet. Maletades oma vanusele, on AWK dodud aktiivselt kasutusel administraatorite poolt rutiinsete ülesannete täitmiseks, mis on seotud erinevate tekstifailide analüüsi ja lihtsate statistika genereerimisega.
Olulised muudatused:
- Lisatud on katse taseme tugi mäluhalduri pma (persistent malloc), mis võimaldab salvestada muutujaid, massiive ja kasutaja määratud funktsioone erinevate awk'i käivituste vahel.
- Kõrge täpsusega aritmeetika tugi, mis on rakendatud MPFR teegi abil, on välja viidud GNU Awki hoolduse vastutusest ja edastatud kolmandale entusiastile. Märgitakse, et MPFR režiimi rakendamine GNU Awkis on vaadeldav kui viga. Olemasoleva oleku muutmisel, hooldamise lõpetamise korral on plaanis see võimalus GNU Awkist täielikult eemaldada.
- Üksikute koostisosade infrastruktuuri uuendamine Libtool 2.4.7 ja Bison 3.8.2.
- Numbrite võrdlemise loogika on muudetud vastavaks C keeles kasutatavale loogikale. Kasutajatele puudutab muudatus peamiselt Infinity ja NaN väärtuste võrreldavust tavaliste numbritega.
- Associeerivates massiivides on nüüd võimalik kasutada FNV1-A räsi funktsiooni, kui keskkonnamuutuja AWK_HASH on seadistatud väärtusele «fnv1a».
- CMake'i toetuse koostamine on eemaldatud (CMake'i toejoodud kood on olnud kasutamata ja viis aastat uuendamata).
- Lisatud funktsioon mkbool() boolean-tüüpide loomiseks, mis on numbrid, kuid töödeldakse kui Boolean tüüpi.
- BWK režiimis on flaagi «—traditional» korral vaikimisi lubatud väljendid, et määrata vahemikke, mida varem lubati «-r» («—re-interval») valiku kaudu.
- rwarray laienduses on pakutud uusi funktsioone writeall() ja readall(), et korraga kirjutada ja lugeda kõiki muutujaid ja massiive.
- Kasutusele on võetud gawkbug skript veainfot edastamiseks.
- Tagatakse kohene töö lõpetamine süntaksivigade tuvastamisel, mis lahendab probleeme fuzzing-testimise tööriistade kasutamisel.
- Toetuse lõpetamine operatsioonisüsteemidele OS/2 ja VAX/VMS.
Allikas: opennet.ru
