Nueva versión del intérprete GNU Awk 5.2

Se ha presentado una nueva versión del lenguaje de programación AWK del proyecto GNU: Gawk 5.2.0. AWK fue desarrollado en la década de 1970 y no ha sufrido cambios significativos desde mediados de la década de 1980, cuando se definió la estructura básica del lenguaje, lo que ha permitido mantener su estabilidad y simplicidad durante las últimas décadas. A pesar de su edad, AWK sigue siendo utilizado activamente por los administradores para llevar a cabo tareas rutinarias relacionadas con el análisis de diversos tipos de archivos de texto y la generación de estadísticas simples.

Cambios clave:

  • Se ha añadido soporte experimental para el gestor de memoria pma (persistent malloc), que permite mantener los valores de las variables, matrices y funciones personalizadas entre diferentes ejecuciones de awk.
  • El soporte para aritmética de alta precisión, implementado a través de la biblioteca MPFR, ha sido desasignado de la responsabilidad del mantenedor de GNU Awk y transferido a un entusiasta externo. Se señala que la implementación del modo MPFR en GNU Awk es considerada un error. En caso de que cambie el estado de mantenimiento, se planea eliminar completamente esta funcionalidad de GNU Awk.
  • Se han actualizado los componentes de la infraestructura de compilación Libtool 2.4.7 y Bison 3.8.2.
  • Se ha modificado la lógica de comparación de números, que ahora está alineada con la lógica utilizada en el lenguaje C. Para los usuarios, el cambio afecta principalmente la comparación de los valores Infinity y NaN con números ordinarios.
  • Se ha proporcionado la posibilidad de utilizar la función hash FNV1-A en arreglos asociativos, habilitada al establecer la variable de entorno AWK_HASH en el valor 'fnv1a'.
  • Se ha eliminado el soporte para la construcción utilizando CMake (el código de soporte CMake no fue solicitado y no se actualizó durante cinco años).
  • Se ha añadido la función mkbool() para crear valores booleanos, que son números, pero se tratan como del tipo Boolean.
  • En modo BWK, al especificar la bandera '--traditional', se ha habilitado por defecto el soporte para expresiones para la definición de rangos, que anteriormente se incluía con la opción '-r' ('--re-interval').
  • En la extensión rwarray se han propuesto nuevas funciones writeall() y readall() para escribir y leer a la vez todas las variables y matrices.
  • Se ha añadido el script gawkbug para informar sobre errores.
  • Se garantiza la finalización inmediata en caso de detectar errores de sintaxis, lo que resuelve problemas al utilizar herramientas para pruebas de fuzzing.
  • Se ha dejado de ofrecer soporte para los sistemas operativos OS/2 y VAX/VMS.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster