> It's not always a matter of silently ignoring something but due to the nature of the task it is certainly very easy to shoot yourself in the foot doing something that isn't technically an error but wasn't your intention.
I agree with you here, it's easy to write perfectly valid configurations that don't do what you intended. But throwing it all out seems like the baby going out with the bathwater to me.
In all seriousness, what if it was XML all around? I hate writing XML by hand, but that's part of the problem you are describing(ie human editing of raw config). XML parses very nicely, so difficulty of coding tools to speak XML is almost non-existent.
All in all, it's just a big change you are proposing. Us UNIX people are incredibly change-averse. We keep getting burned :)
> All in all, it's just a big change you are proposing. Us UNIX people are incredibly change-averse. We keep getting burned :)
Well that's exactly my point. I don't propose that we deploy it tomorrow but I want to see people do it and think about it and talk about it so our grand children can have better computing. Instead of sticking to the way of our fathers for all eternity.
XML as you identified has the same problem.
You need a human-dedicated interface that captures the intent of the human and you then convert that to something that the computer likes and tell them here ... this is what the human has ordered.
When we share the same raw input file with the computers that's when we set ourselves up for trouble.
Do I have the ultimate solution? No. Can I still complain about it being a problem? Yes.
One "solution" is a graphical rich interface with things like auto completion and validation and all that so it's much more capable of capturing the true intent of the humans. Basically the same way we interact with other web sites.
Imagine your bank told you to append a new text line to the end of "transactions.txt" file if you wanted to transfer money.
Now I put solutions in quotation marks because I know a GUI has other practical limitations and problems but you get the idea.
My point is as humans eventually we have to learn to graduate from sharing a rudimentary text language with the computer for the sake of short-term convenience.
I agree with you here, it's easy to write perfectly valid configurations that don't do what you intended. But throwing it all out seems like the baby going out with the bathwater to me.
In all seriousness, what if it was XML all around? I hate writing XML by hand, but that's part of the problem you are describing(ie human editing of raw config). XML parses very nicely, so difficulty of coding tools to speak XML is almost non-existent.
All in all, it's just a big change you are proposing. Us UNIX people are incredibly change-averse. We keep getting burned :)