June 5th, 2007

nyaload

Курица? Яйцо? Тысячи Мюнхаузенов и яйца.

Конфиг пользуется файловой системой.
assert пишет в лог, когда возникает.
лог использует файловую систему и конфиг, что бы писать в файл (логично, да), использует всякие assert внутри себя.
файловая система пишет в лог.

Исходя из этой лапши сделал вывод - файловая система должна инициализироваться в два приёма - сначала самые базовые механизмы, которые не могут неправильно инициализироваться, потом расширеная инициализация. Конфигов должно быть чуть больше двух - удобный (для игры/пользовательского приложения), маленький надежный (для системных компонент), сверх-маленький реализованый внутри самой FS для самой себя, вплоть до compile-time констант.