Nova verzija tumača GNU Awk 5.2

Predstavljeno je novo izdanje GNU Project implementacije programskog jezika AWK, Gawk 5.2.0. AWK je razvijen 70-ih godina prošlog stoljeća i nije doživio značajnije promjene od sredine 80-ih, u kojima je definirana osnovna okosnica jezika, što mu je omogućilo da zadrži iskonsku stabilnost i jednostavnost jezika u prošlosti. desetljeća. Unatoč poodmakloj dobi, administratori još uvijek aktivno koriste AWK za obavljanje rutinskog rada vezanog uz analiziranje različitih vrsta tekstualnih datoteka i generiranje jednostavne rezultirajuće statistike.

Ključne promjene:

  • Dodana je eksperimentalna podrška za pma (persistent malloc) upravitelj memorije, koji vam omogućuje spremanje vrijednosti varijabli, nizova i korisnički definiranih funkcija između različitih pokretanja awk-a.
  • Visokoprecizna aritmetička podrška koju pruža biblioteka MPFR izuzeta je iz odgovornosti održavatelja GNU Awk-a i povjerena vanjskom entuzijastu. Napominje se da se implementacija MPFR načina rada u GNU Awku smatra greškom. U slučaju promjene stanja koja se održava, plan je potpuno ukloniti ovu značajku iz GNU Awk-a.
  • Ažurirane su komponente infrastrukture za sklapanje Libtool 2.4.7 i Bison 3.8.2.
  • Promijenjena je logika usporedbe brojeva koja je usklađena s logikom koja se koristi u jeziku C. Za korisnike, promjena uglavnom utječe na usporedbu Infinity i NaN vrijednosti s uobičajenim brojevima.
  • Moguće je koristiti funkciju raspršivanja FNV1-A u asocijativnim nizovima, koja je omogućena kada je varijabla okruženja AWK_HASH postavljena na "fnv1a".
  • Podrška za izgradnju pomoću CMakea je uklonjena (Cmake kod podrške nije bio tražen i nije ažuriran pet godina).
  • Dodana funkcija mkbool() za stvaranje Booleovih vrijednosti, koje su brojevi, ali se tretiraju kao Booleove.
  • U BWK načinu rada, navođenje zastavice "--traditional" prema zadanim postavkama omogućuje podršku za izraze za definiranje raspona prethodno omogućenih opcijom "-r" ("--re-interval").
  • Proširenje rwarray nudi nove funkcije writeall() i readall() za pisanje i čitanje svih varijabli i nizova odjednom.
  • Dodana gawkbug skripta za prijavu grešaka.
  • Omogućeno je trenutno isključivanje ako se otkriju pogreške u sintaksi, što rješava probleme s korištenjem alata za testiranje fuzzinga.
  • Podrška za operativne sustave OS/2 i VAX/VMS je ukinuta.

Izvor: opennet.ru

Dodajte komentar