Nova versio de la interpretisto GNU Awk 5.2

Nova eldono de la efektivigo de la GNU-Projekto de la programlingvo AWK, Gawk 5.2.0, estis prezentita. AWK estis disvolvita en la 70-aj jaroj de la pasinta jarcento kaj ne spertis signifajn ŝanĝojn ekde la mez-80-aj jaroj, en kiuj estis difinita la baza spino de la lingvo, kio permesis al ĝi konservi la nepuran stabilecon kaj simplecon de la lingvo dum la pasinteco. jardekojn. Malgraŭ ĝia progresinta aĝo, AWK daŭre estas aktive uzata de administrantoj por plenumi rutinajn laborojn rilatajn al analizo de diversaj specoj de tekstaj dosieroj kaj generado de simplaj rezultaj statistikoj.

Ŝlosilaj ŝanĝoj:

  • Aldonita eksperimenta subteno por la memoradministrilo pma (persistenta malloc), kiu permesas vin konservi la valorojn de variabloj, tabeloj kaj uzant-difinitaj funkcioj inter malsamaj kuroj de awk.
  • La altpreciza aritmetika subteno provizita de la MPFR-biblioteko estis prenita el la respondeco de la prizorganto de GNU Awk kaj subkontraktita al ekstera entuziasmulo. Oni rimarkas, ke la efektivigo de MPFR-reĝimo en GNU Awk estas konsiderata cimo. Okaze de konservita ŝtatŝanĝo, la plano estas tute forigi ĉi tiun funkcion de GNU Awk.
  • La asembleaj infrastrukturaj komponantoj Libtool 2.4.7 kaj Bison 3.8.2 estis ĝisdatigitaj.
  • La logiko por kompari nombrojn estis ŝanĝita, kiu estas aligita al la logiko uzata en la C-lingvo. Por uzantoj, la ŝanĝo ĉefe influas la komparon de Infinity kaj NaN-valoroj kun regulaj nombroj.
  • Eblas uzi la hashfunkcion FNV1-A en asociaj tabeloj, kiu estas ebligita kiam la mediovariablo AWK_HASH estas agordita al "fnv1a".
  • Subteno por konstrui uzante CMake estis forigita (la Cmake-subtenkodo ne estis postulata kaj ne estis ĝisdatigita dum kvin jaroj).
  • Aldonita mkbool() funkcio por krei buleajn valorojn, kiuj estas nombroj sed estas traktataj kiel Bulea.
  • En BWK-reĝimo, specifi la flagon "--traditional" defaŭlte ebligas subtenon por esprimoj por difinado de intervaloj antaŭe ebligitaj per la opcio "-r" ("--re-interval").
  • La etendo rwarray ofertas novajn funkciojn writeall() kaj readall() por skribi kaj legi ĉiujn variablojn kaj tabelojn samtempe.
  • Aldonita gawkbug skripto por raporti cimojn.
  • Tuja malŝalto estas disponigita se sintaksaj eraroj estas detektitaj, kiu solvas problemojn kun uzado de fuzantaj testaj iloj.
  • Subteno por OS/2 kaj VAX/VMS operaciumoj estis nuligita.

fonto: opennet.ru

Aldoni komenton