On 9/29/06, Magnus Manske <magnusmanske(a)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