What you will find is the vast majority of your configurations will invoke a make.sh script that does everything that you want to support in your system.
What you will find is the vast majority of your configurations will invoke a make.sh script that does everything that you want to support in your system.
Feel like any data definition language eventually bolts on a shitty form of templates.
It's incredibly frustrating to have to configure a build with something as shitty as YAML. There's a tangible amount of money I have wasted in organizations on it.
A build is not actually a static configuration of another system. It's a program and deserves everything we need from programming languages.
That said, Starlark is way closer to a real language (Python) than YAML.
The reason you might want a Turing-incomplete language is that you can prove the build terminates. However that's a lie, since you will always need to escape to running programs outside the language!