GNU Awk 5.2 yorumlayıcısının yeni sürümü

GNU Projesi'nin AWK programlama dili uygulamasının yeni sürümü Gawk 5.2.0 tanıtıldı. AWK, geçen yüzyılın 70'li yıllarında geliştirildi ve dilin temel omurgasının tanımlandığı 80'li yılların ortalarından bu yana önemli değişikliklere uğramadı, bu da dilin geçmişteki bozulmamış istikrarını ve sadeliğini korumasına olanak tanıdı onlarca yıl. İleri yaşına rağmen AWK, yöneticiler tarafından çeşitli metin dosyalarının ayrıştırılması ve basit sonuç istatistiklerinin oluşturulmasıyla ilgili rutin işleri gerçekleştirmek için hala aktif olarak kullanılmaktadır.

Anahtar değişiklikler:

  • Farklı awk çalıştırmaları arasında değişkenlerin, dizilerin ve kullanıcı tanımlı işlevlerin değerlerini kaydetmenize olanak tanıyan pma (kalıcı malloc) bellek yöneticisi için deneysel destek eklendi.
  • MPFR kitaplığı kullanılarak uygulanan yüksek hassasiyetli aritmetik desteği, GNU Awk yöneticisinin sorumluluğundan çıkarıldı ve dışarıdan bir meraklıya devredildi. GNU Awk'ta MPFR modunun uygulanmasının bir hata olarak kabul edildiği belirtilmektedir. Durum değişikliğinin sürdürülmesi durumunda plan, bu özelliğin GNU Awk'tan tamamen kaldırılmasıdır.
  • Montaj altyapısı bileşenleri Libtool 2.4.7 ve Bison 3.8.2 güncellendi.
  • Sayıları karşılaştırma mantığı değiştirilerek C dilinde kullanılan mantıkla uyumlu hale getirildi. Kullanıcılar için değişiklik esas olarak Infinity ve NaN değerlerinin normal sayılarla karşılaştırılmasını etkiliyor.
  • AWK_HASH ortam değişkeni "fnv1a" olarak ayarlandığında etkinleştirilen FNV1-A karma fonksiyonunun ilişkisel dizilerde kullanılması mümkündür.
  • CMake kullanarak bina oluşturma desteği kaldırıldı (Cmake destek kodu talep edilmedi ve beş yıldır güncellenmedi).
  • Sayı olan ancak Boole değeri olarak kabul edilen boole değerleri oluşturmak için mkbool() işlevi eklendi.
  • BWK modunda, varsayılan olarak "--traditional" bayrağının belirtilmesi, daha önce "-r" ("--re-interval") seçeneğiyle etkinleştirilen aralık ifadelerinin desteklenmesini sağlar.
  • rwarray uzantısı, tüm değişkenleri ve dizileri aynı anda yazmak ve okumak için yeni writeall() ve readall() işlevlerini sunar.
  • Hataları bildirmek için gawkbug betiği eklendi.
  • Sözdizimi hataları tespit edilirse anında kapatma sağlanır, bu da fuzzing test araçlarının kullanılmasıyla ilgili sorunları çözer.
  • OS/2 ve VAX/VMS işletim sistemlerine yönelik destek durduruldu.

Kaynak: opennet.ru

Yorum ekle