Thomas Dalton wrote:
Why is the parser outputting something other than what the user wants ever desirable?
You're talking about some very different things when you use the word "user" here. The current parser (PHP regexp) is used both when an editor saves an article and when a reader browses an article (unless it was still in the cache). Producing an error message for a reader isn't meaningful. Some editors only fix a single spelling error and are not interested in learning about syntax errors in other parts of the article. Any kind of error message must be opt-in, that is what "lint" was to old C programmers, or what "-Wall -pedantic" (activate all warning messages) is to the GCC compiler. This could be useful, though, which suggests the parser should be able to run in different modes: Just-show-it mode and lint mode.
http://en.wikipedia.org/wiki/Lint_(software)