// Simple predicates
'tacocat'.startsWith('taco')

// Parameterized predicates over structured data
account.balance >= transaction.withdrawal

// JSON objects
{'sub': '12345678',
 'aud': 'example2.cel.dev',
 'iss': 'https://example1.cel.dev/jwt-issuer'}

// Strongly typed objects
common.GeoPoint{ latitude: 10.0, longitude: -5.5 }

Common Expression Language (CEL) adalah bahasa ekspresi yang cepat, portabel, dan aman untuk dieksekusi dalam aplikasi yang penting bagi performa. CEL didesain untuk disematkan dalam aplikasi, dengan ekstensi khusus aplikasi, dan ideal untuk memperluas konfigurasi deklaratif yang mungkin sudah digunakan aplikasi Anda.

Gunakan CEL untuk hal-hal seperti filter daftar untuk panggilan API, batasan validasi pada buffering protokol, dan aturan otorisasi untuk permintaan API.

Mempercepat evaluasi ekspresi di jalur yang penting bagi performa dari nanodetik ke mikrodetik.
Cocok untuk developer, ringan dengan sintaksis umum di berbagai sistem Google dan eksternal.
Tidak selesai, dan hanya mengakses data yang disediakan oleh aplikasi host.
Buktikan kebenaran, invarian keamanan, dan kesetaraan di semua input menggunakan pemecah SMT otomatis seperti Z3.

CEL ideal untuk aplikasi yang penting terhadap performa karena dirancang untuk mengevaluasi secara aman dan cepat (nanodetik hingga mikrodetik) dengan biaya yang dapat diprediksi. Ekspresi CEL sangat berguna untuk logika predikat dan transformasi data sederhana.

CEL digunakan paling efisien dalam aplikasi yang ekspresi sering dievaluasi, tetapi jarang diubah. Misalnya, mengevaluasi permintaan HTTP terhadap kebijakan keamanan adalah kasus penggunaan yang sangat baik untuk CEL. Ekspresi kebijakan keamanan CEL akan memiliki biaya konfigurasi satu kali untuk memvalidasi ekspresi, lalu dievaluasi dengan sangat sering dengan biaya yang dapat diabaikan.

Masih belum yakin? Lihat ringkasan CEL dan definisi bahasa, atau langsung hubungi kami. Kami akan membantu Anda dengan senang hati.

Saat agen AI membuat, memfaktorkan ulang, dan men-deploy kebijakan, pengujian unit heuristik mungkin gagal mencakup kasus ekstrem di seluruh input yang tak terbatas. The CEL Formal Verification Framework, yang didukung oleh pembukti teorema Z3, memungkinkan developer membuktikan kebenaran kebijakan secara matematis, memeriksa kesetaraan AST, dan menjamin invarian keamanan di seluruh ruang input.

Temukan kekurangan logika yang tidak kentara, terapkan pagar pengaman yang lengkap, dan amankan penulisan kebijakan otomatis dengan kepastian matematis.

Ingin membantu project CEL? Berkontribusi pada dokumentasi dan kode open source kami. Kami menantikan bantuan Anda.