GNU Awk 5.2 インタープリターの新バージョン

GNU プロジェクトの AWK プログラミング言語実装の新しいリリース、Gawk 5.2.0 が導入されました。 AWK は前世紀の 70 年代に開発され、言語の基本的なバックボーンが定義された 80 年代半ば以降大きな変更は受けておらず、これにより言語の原始的な安定性と単純さを維持することができました。数十年。 AWK は古いものであるにもかかわらず、さまざまな種類のテキスト ファイルの解析や結果として得られる単純な統計の生成に関連する日常的な作業を実行するために、管理者によって今でも積極的に使用されています。

主な変更点:

  • pma (persistent malloc) メモリ マネージャーの実験的サポートが追加されました。これにより、awk の異なる実行間で変数、配列、ユーザー定義関数の値を保存できるようになります。
  • MPFR ライブラリによって提供される高精度の算術サポートは、GNU Awk メンテナーの責任から外され、外部の愛好家に委託されました。 GNU Awk での MPFR モードの実装はバグであると考えられることに注意してください。 状態が変更された場合、この機能は GNU Awk から完全に削除される予定です。
  • アセンブリ インフラストラクチャ コンポーネント Libtool 2.4.7 および Bison 3.8.2 が更新されました。
  • 数値を比較するロジックが変更され、C 言語で使用されるロジックに合わせられました。 ユーザーにとって、この変更は主に Infinity および NaN 値と通常の数値との比較に影響します。
  • 連想配列で FNV1-A ハッシュ関数を使用することができます。これは、AWK_HASH 環境変数が「fnv1a」に設定されている場合に有効になります。
  • CMake を使用したビルドのサポートは削除されました (Cmake サポート コードは需要がなく、XNUMX 年間更新されていませんでした)。
  • mkbool() 関数を追加してブール値を作成しました。ブール値は数値ですがブール値として扱われます。
  • BWK モードでは、デフォルトで「--traditional」フラグを指定すると、以前に「-r」(「--re-interval」)オプションで有効にした範囲を定義する式のサポートが有効になります。
  • rwarray 拡張機能は、すべての変数と配列を一度に書き込みおよび読み取りするための新しい関数 writeall() および readall() を提供します。
  • バグを報告するための gawkbug スクリプトを追加しました。
  • 構文エラーが検出された場合は即時シャットダウンが提供され、ファジング テスト ツールの使用に関する問題が解決されます。
  • OS/2 および VAX/VMS オペレーティング システムのサポートは終了しました。

出所: オープンネット.ru

コメントを追加します