- Syntax for the configuration is straightforward.
- Syntax for the definition is straightforward.
- It supports comments (end of line and full line).
- It's not NP complete and there is no weird parser meta-language or includes.
- There are parsers for any major language I've used in the last decade.
- It gives me a strongly typed definition so I don't have to infer or parse values.
- It's easy to verify the validity during lint tests by using protoc to encode to a binary proto.
It'd be nice if it supported unicode a bit better, but it's configuration, so that's not a common concern.