C# で CEL エンジンをゼロから実装し、.NET 初の protovalidate ライブラリを公開

Building a native C# implementation of CEL engine

私は Google の Common Expression Language (CEL) を C# でゼロから実装し、Celly というライブラリを公開しました。これは公式のコンフォマンススイート 2,456 件のテストをすべてパスし、.NET 環境で安全にルールを評価できる初めてのネイティブ実装です。さらに、この成果により、.NET 向けに protovalidate ライブラリも初めて提供できるようになりました。

CEL は意図的に Turing-complete ではなく、無限ループや再帰を許さず、評価が必ず終了するように設計されています。
  1. akshayshah

    CEL と protovalidate の両方にかなり広範な適合性テストハーネスがあるにもかかわらず、記事で AI を使って移植したことに言及されていないことに驚きました(特にポジティブでもネガティブでもない意味で)。このプロジェクトは、今日のツールにとってまさに絶好の領域にあるはずです。

    記事のほとんどが AI によって書かれたように聞こえることから、この省略は特に際立っています。(Pangram も同意していますが、それがどれほど価値があるかは別として。)

  2. nu11ptr

    > Kubernetes のアドミッションポリシー、Envoy の RBAC ルール、Google Cloud IAM の条件、そして gRPC の protovalidate の背後にある言語です

    非常に小さな細かい指摘ですが、私の知る限り protovalidate は Google ではなく Buf から来ています。protovalidate は後方互換性を通じて gRPC と連携して動作しますが(Buf の ConnectRPC も同様)、"gRPC の protovalidate"と言うと、人々はそれが Google から来たものだと誤解する可能性があります。

    免責事項:私は Buf でも Google でも関係ありません。

  3. xeonax

    これは、私の PLM/PDM プロジェクトの状態遷移をガードするための良い方法になりそうです

この日のほかの記事

2026-07-30