Хочу сказать в защиту json
Именно json научились худо-бедно читать и интерпретировать вообще везде.
Есть у меня конфиги, которые должны читаться в питоне, эрланге, сях, до диезе баше и повершелле.
И тогда то понимаешь, что во-первых ничего кроме json толком неработает, во-вторых, хорошо что json есть
похоже мой не сбывшийся доклад про конфиги, надо всё в статью оформить.
Вообще когда я выбирал формат были следующие критерии:
* наличие коментариев
* human readable (xml, json не очень ридаблы)
* Computer readable (этот формат должен поддерживтаься "искоробки" любыми языками, чтобы можно было один и тот же конфиг использовать для разных аппок на разных языках)
* формат должен быть типизирован — чтобы в коде не было getint(), getstring(), getbool() как для ini
* формат должен легко маппиться на код и структуры языка. У нас в языках основные структуры данных это списки, словари. Вот в конфиге они тоже должны быть.
Например в xml нельзя сделать список... Вернее можно, но будет 150 вариантов как это сдлать. Тоже самое со словарем. А должен быть один самый очевидный способ.