On 9/29/06, Magnus Manske magnusmanske@googlemail.com wrote:
I've been among those writing parsers (many half-baken ones;-) and IMHO the only viable option, in the long run, is to make an abstract grammar (whatever style) and have parser generators for many languages implement them.
I agree that down the road a formal grammar should be adopted, but first thing is first: separate the parser. I would love to see the MediaWiki parser become something like Radeox (http://radeox.org/space/start). This rendering engine is used by Confluence, XWiki, and others. It is currently only written in Java, but that is fine. The MediaWiki parser would only initially be available in PHP. This is much better than it only being available in MediaWiki.
Also, the parser could still be maintained by the MediaWiki team. They would not have to give up control of the parser or their vision for it. They only change is the parser could stand on its own and its power and popular syntax could be utilized by scores of other (PHP) wikis.
On another positive note, the decoupling of the parser would also bring a great opportunity to fix any quirks with the current parser, including rendering issues.
Greg