On Mon, Nov 3, 2014, at 03:21 PM, Dimitris Papastamos wrote: > Another down-side is that different shells use different syntax for > setting > and unsetting environment variables, which can be a PITA if you want > to share your configuration.
I am just speculating here, a though experiment, but that shouldn't be a problem if a shell is chosen by convention (maybe Bourne shell). Using mutt as an example just because I happen to use mutt, and it has way too many runtime configuration variables to use the recompile config.h approach. If the mutt developers chose to use Bourne shell syntax, then all mutt users would be using the same syntax. So .muttrc would be export mutt_edit_headers=yes export mutt_mime_forward=ask-yes and so on. And mutt could reduce its lines of code by relying on an external tool. But since I am speculating, I am probably overlooking some significant issues. I don't know how much code could really be discarded. A few serious problems have already been pointed out, such as lack of space in the environment. But I've had fun thinking about throwing away all the many many lines of codes duplicated across applications to control run-time configuration. It will probably remain a fun thought and no more. -- http://www.fastmail.fm - mmm... Fastmail...