Nová verzia prekladača GNU Awk 5.2

Bolo predstavené nové vydanie implementácie programovacieho jazyka AWK v rámci projektu GNU, Gawk 5.2.0. AWK bol vyvinutý v 70. rokoch minulého storočia a od polovice 80. rokov neprešiel výraznými zmenami, v ktorých bola definovaná základná chrbtica jazyka, čo mu umožnilo zachovať pôvodnú stabilitu a jednoduchosť jazyka v minulosti. desaťročia. Napriek pokročilému veku je AWK stále aktívne využívaný administrátormi na vykonávanie rutinných prác spojených s analýzou rôznych typov textových súborov a generovaním jednoduchých výsledných štatistík.

Kľúčové zmeny:

  • Pridaná experimentálna podpora pre správcu pamäte pma (persistent malloc), ktorý vám umožňuje ukladať hodnoty premenných, polí a používateľom definovaných funkcií medzi rôznymi spusteniami awk.
  • Vysoko presná aritmetická podpora poskytovaná knižnicou MPFR bola vyňatá zo zodpovednosti správcu GNU Awk a zadaná externému nadšencovi. Je potrebné poznamenať, že implementácia režimu MPFR v GNU Awk sa považuje za chybu. V prípade udržiavanej zmeny stavu je plánom úplne odstrániť túto funkciu z GNU Awk.
  • Komponenty montážnej infraštruktúry Libtool 2.4.7 a Bison 3.8.2 boli aktualizované.
  • Zmenila sa logika porovnávania čísel, ktorá je zosúladená s logikou používanou v jazyku C. Pre používateľov sa zmena týka najmä porovnávania hodnôt Infinity a NaN s bežnými číslami.
  • V asociatívnych poliach je možné použiť hashovaciu funkciu FNV1-A, ktorá je povolená, keď je premenná prostredia AWK_HASH nastavená na „fnv1a“.
  • Podpora pre vytváranie pomocou CMake bola odstránená (kód podpory Cmake nebol žiadaný a nebol aktualizovaný päť rokov).
  • Pridaná funkcia mkbool() na vytvorenie boolovských hodnôt, ktoré sú číslami, ale považujú sa za boolovské.
  • V režime BWK zadanie príznaku „--tradičné“ v predvolenom nastavení umožňuje podporu výrazov na definovanie rozsahov, ktoré boli predtým povolené voľbou „-r“ („--re-interval“).
  • Rozšírenie rwarray ponúka nové funkcie writeall() a readall() na zapisovanie a čítanie všetkých premenných a polí naraz.
  • Pridaný skript gawkbug na hlásenie chýb.
  • Ak sa zistia syntaktické chyby, poskytuje sa okamžité vypnutie, čo rieši problémy s používaním nástrojov na testovanie fuzzing.
  • Podpora operačných systémov OS/2 a VAX/VMS bola ukončená.

Zdroj: opennet.ru

Pridať komentár