Nuova versione dell'interprete GNU Awk 5.2

È stata rilasciata una nuova versione del linguaggio di programmazione AWK dal progetto GNU — Gawk 5.2.0. AWK è stato sviluppato negli anni '70 e non ha subito significativi cambiamenti dalla metà degli anni '80, periodo in cui è stata definita la struttura principale del linguaggio, cosa che ha consentito di mantenere la stabilità e la semplicità del linguaggio negli ultimi decenni. Nonostante l'età avanzata, AWK è ancora ampiamente utilizzato dagli amministratori per svolgere task di routine legati all'analisi di diversi tipi di file di testo e alla generazione di statistiche semplici.

Principali modifiche:

  • Aggiunto il supporto sperimentale per il gestore di memoria pma (persistent malloc), che consente di conservare i valori delle variabili, degli array e delle funzioni utente tra diverse esecuzioni di awk.
  • Il supporto per l'aritmetica ad alta precisione, realizzato grazie alla libreria MPFR, è stato rimosso sotto la responsabilità del mantenitore di GNU Awk e trasferito a un appassionato esterno. Si osserva che l'implementazione della modalità MPFR in GNU Awk è considerata un errore. Qualora cambiasse la situazione di manutenzione, si prevede di rimuovere completamente questa funzionalità da GNU Awk.
  • Aggiornati i componenti dell'infrastruttura di build Libtool 2.4.7 e Bison 3.8.2.
  • Modificata la logica di confronto dei numeri, che è stata allineata alla logica utilizzata nel linguaggio C. Per gli utenti, la modifica riguarda principalmente il confronto dei valori Infinity e NaN con numeri normali.
  • Introdotta la possibilità di utilizzare la funzione hash FNV1-A negli array associativi, attivabile impostando la variabile ambiente AWK_HASH su "fnv1a".
  • Rimosso il supporto per la build utilizzando CMake (il codice di supporto CMake non è stato utilizzato e non è stato aggiornato per cinque anni).
  • Aggiunta la funzione mkbool() per creare valori booleani, che sono numeri, ma vengono elaborati come tipo Boolean.
  • In modalità BWK, attivando il flag "—traditional", il supporto per le espressioni per determinare gli intervalli, precedentemente abilitate con l'opzione "-r" ("—re-interval"), è abilitato per default.
  • Nell'estensione rwarray sono state proposte nuove funzioni writeall() e readall() per scrivere e leggere simultaneamente tutte le variabili e gli array.
  • Aggiunto lo script gawkbug per la segnalazione di informazioni sugli errori.
  • È garantita la terminazione immediata in caso di errori di sintassi, risolvendo i problemi con l'uso degli strumenti per il fuzzing.
  • È stata interrotta la supporto per i sistemi operativi OS/2 e VAX/VMS.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster