I've been round that loop a few times; if you use a full language for config then you either have to impose iron discipline or you sooner or later end up needing a configuration format for your configuration format.
That is to say the configuration eventually becomes a program in itself, with a few key values... which then get pulled out into a simple config file.
That is to say the configuration eventually becomes a program in itself, with a few key values... which then get pulled out into a simple config file.
See: autotools, sendmail, etc.