Configuration description languages and the semantics of one of them: CUE.
Séminaire organisé par Eloi PERDEREAU (LIFO) le 22/06/2026.
With the every increasing weight of digital infrastructures, the need to better master their configuration has given rise to a new class of languages that we may qualify as configuration description languages. They take a middle ground between static data description formats such as YAML and general purpose programming languages by offering means to express and manipulate configuration as record-like structures, while giving strong guarantees and control on the evaluation. The spectrum is very wide, ranging between imperative (Starlark), functional (Dhall, Nickel, Jsonnet), object-oriented (Pkl) and logic programming (CUE).
In this presentation, I will first give an overview of the design space of configuration description languages, then I will dive into the contributions of a recent work: the formalization of a core subset of CUE. CUE takes inspiration from feature structures and combines well-studied concepts such as unification and scopes. However, the core constructs of the language, unambiguous when taken separately, generate a certain complexity that proves difficult to grasp precisely in the absence of formalized specifications. I will try to give the intuitions behind our interpretation as "forest graphs", the rules of the fixed-point evaluation and the procedures for error detection.