jaq
jaq (Jacques1 のように発音) は、JSON データ処理ツール jq のクローンです。jaq は、jq の構文と操作の大部分をサポートすることを目的としています。
jaq は、次の 3 つの目標に重点を置いています。
正確性: jaq は、ほとんどの場合 jq との互換性を維持しながら、より正確で予測可能な jq の実装を提供することを目指しています。
意外な jq の動作の例
パフォーマンス: もともと jaq を作成したのは、jq の起動時間が長く、私のマシンでは約 50 ミリ秒かかることに悩まされていたからです。これは、特に多数の小さなファイルを処理するときに顕著になります。jaq は jq 1.6 よりも約 30 倍速く起動し、他の多くのベンチマークでも jq を上回っています。
シンプルさ: jaq は、バグの可能性を減らし、貢献を容易にするために、シンプルで小さな実装を目指しています。
私は別の Rust プログラム、つまり jql からインスピレーションを得ました。ただし、jql とは異なり、jaq は jq の構文とセマンティクスを厳密に模倣することを目的としています。これにより、jq に精通したユーザーは jaq を簡単に使用できるようになります。
リンク: https://github.com/01mf02/jaq