Versi baharu jurubahasa GNU Awk 5.2

Keluaran baharu pelaksanaan Projek GNU bagi bahasa pengaturcaraan AWK, Gawk 5.2.0, telah diperkenalkan. AWK telah dibangunkan pada 70-an abad yang lalu dan tidak mengalami perubahan ketara sejak pertengahan 80-an, di mana tulang belakang asas bahasa itu ditakrifkan, yang membolehkannya mengekalkan kestabilan murni dan kesederhanaan bahasa sejak dahulu. berdekad-dekad. Walaupun usianya sudah lanjut, AWK masih digunakan secara aktif oleh pentadbir untuk melaksanakan kerja rutin yang berkaitan dengan menghuraikan pelbagai jenis fail teks dan menjana statistik terhasil yang mudah.

Perubahan utama:

  • Menambahkan sokongan eksperimen untuk pengurus memori pma (persistent malloc), yang membolehkan anda menyimpan nilai pembolehubah, tatasusunan dan fungsi yang ditentukan pengguna antara larian awk yang berbeza.
  • Sokongan aritmetik berketepatan tinggi yang disediakan oleh perpustakaan MPFR telah dikeluarkan daripada tanggungjawab penyelenggara GNU Awk dan disumber luar kepada peminat luar. Adalah diperhatikan bahawa pelaksanaan mod MPFR dalam GNU Awk dianggap sebagai pepijat. Sekiranya berlaku perubahan keadaan yang dikekalkan, rancangannya adalah untuk mengalih keluar sepenuhnya ciri ini daripada GNU Awk.
  • Komponen infrastruktur pemasangan Libtool 2.4.7 dan Bison 3.8.2 telah dikemas kini.
  • Logik untuk membandingkan nombor telah diubah, yang dibawa selaras dengan logik yang digunakan dalam bahasa C. Bagi pengguna, perubahan terutamanya mempengaruhi perbandingan nilai Infinity dan NaN dengan nombor biasa.
  • Anda boleh menggunakan fungsi cincang FNV1-A dalam tatasusunan bersekutu, yang didayakan apabila pembolehubah persekitaran AWK_HASH ditetapkan kepada "fnv1a".
  • Sokongan untuk membina menggunakan CMake telah dialih keluar (kod sokongan Cmake tidak dalam permintaan dan tidak dikemas kini selama lima tahun).
  • Menambah fungsi mkbool() untuk mencipta nilai boolean, iaitu nombor tetapi dianggap sebagai Boolean.
  • Dalam mod BWK, menyatakan bendera "--tradisional" secara lalai membolehkan sokongan untuk ungkapan untuk mentakrifkan julat yang sebelum ini didayakan oleh pilihan "-r" ("--re-interval").
  • Sambungan rwarray menawarkan fungsi baharu writeall() dan readall() untuk menulis dan membaca semua pembolehubah dan tatasusunan sekaligus.
  • Menambahkan skrip gawkbug untuk melaporkan pepijat.
  • Penutupan segera disediakan jika ralat sintaks dikesan, yang menyelesaikan masalah menggunakan alat ujian kabur.
  • Sokongan untuk sistem pengendalian OS/2 dan VAX/VMS telah dihentikan.

Sumber: opennet.ru

Tambah komen