Common Expression Language
The Common Expression Language (CEL) implements common semantics for expression
evaluation, enabling different applications to more easily interoperate.
Key Applications
Security policy: organization have complex infrastructure and need common
tooling to reason about the system as a whole
Protocols: expressions are a useful data type and require interoperability
across programming languages and platforms.
Guiding philosophy:
Keep it small & fast.
CEL evaluates in linear time, is mutation free, and not Turing-complete.
This limitation is a feature of the language design, which allows the
implementation to evaluate orders of magnitude faster than equivalently
sandboxed JavaScript.
Make it extensible.
CEL is designed to be embedded in applications, and allows for