5 ms·
I think terseness and readability are often at odds past a certain point, and TOML seems to optimize for readability at the expense of terseness. E.g., having
by alecbz 6y ago
I think terseness and readability are often at odds past a certain point, and TOML seems to optimize for readability at the expense of terseness.
E.g., having to specify column names again and again is tedious to write, but makes the file easier to read and modify safely.
- chillfox 6y agoYeah, I think toml is great short/simple config files, yaml is good for medium length/complexity, and I have yet to see anything that’s not painful for long config files.
- smitty1e 6y agoThere is always cutting to the chase and using SQLite. https://www.sqlite.org/appfileformat.html https://www.sqlite.org/appfileformat.html
- chillfox 6y agoSQLite is lovely to work with, but I don't think it is entirely appropriate as a configuration format for server software considering that all of the existing tooling for configuration management (Ansible, Puppet, CFEngine) is based on template text files.
- smitty1e 6y agoI dunno. By the time one manages a full enterprise of configuration, one puts it in SQLite and treat your cookbooks/roles/stacks as report products. After normalizing, one could get to a tidy heterogeneous solution. (Only the finest vaporware spoken here.)
- alecbz 6y agoI actually think it's almost the opposite for me. In a tiny yaml file it's pretty easy to understand what everything is; it's huge files where toml's forcing you to full qualify nested tables becomes useful. Too many huge yaml files where I'm just scrolled somewhere in the middle and have no clue what part of the tree I'm actually looking at.
- chillfox 6y agoMaybe our ideas of scale is a bit different? I think yaml files hold's up well to about 50 lines. I have only seen toml files up to about 10-20 lines and it looks great at that scale, but I am having a hard time imagining it being nice at 500+ lines.
- sullyj3 6y agoDhall bills itself as being designed for longer configuration files. It has functions, allowing for some abstraction, but it's not turing-complete. https://github.com/dhall-lang/dhall-lang https://github.com/dhall-lang/dhall-lang