• Marcel van Lohuizenが GCL*1で 経験を元に作成 • 国内で 、メルカリが使っていることで有名 • CUEを用いた新しいサービスや OSSなどが昨年から出てきている *2 特徴 • better JSONとしてライトに使える • データ 中にロジックを書ける(チューリング完全) • モジュール化など、ソフトウェア開発 プラクティスが適用可 • 型と値と制約を同一 も として扱う型システム • 交換法則と結合法則が成り立ち、 結合順序・階層によらない 任意 Overlay(Composite)が可能 • 構成テストもできる 18 // Value Alice: age: 20 // Type People: age: int // Constraint Member: age: > 18 // Validate Alice & People & Member *1: Google/Borg 中で使われているデータ記述言語 *2: dagger.io, KubeVelaなど 今回の開発で使用しています 型と値と制約を同様に扱う ネットワークコントローラ開発 で重要な特性です