Just because borgcfg is painful (?) and YAML is a better option for the public, doesn't mean we can't continue and improve on YAML with more limited expression syntax. Terraform/HCL is often annoying because it doesn't give users tools like easy function declarations for re-use. You get one re-use abstraction: create a module, which is heavy-weight - needs a new directory, "provider version" declarations, a lot of boilerplate per input and output. In return this means the amount of creative shenanigans one needs to understand is typically pretty low.