I think YAML as a language has many faults.
That said, this isn't YAML being a bad language. It's just people abusing YAML.
That said, this isn't YAML being a bad language. It's just people abusing YAML.
My problem is people embedding a DSL inside or ontop of YAML. Then you end up with the worst combination of config and an adhoc programming language.
Probably the moment at which you start thinking about adding branches or other control structures to your config file syntax is the moment at which you should stop for a long, hard examination of why you're doing this, and whether or not there's already a better way of doing this.
If you really need that kind of thing, why not go whole hog and use Guile or Lua or something like that?