On 11/14/07, David Gerard <dgerard(a)gmail.com> wrote:
2. is completely inappropriate in a discussion of 1. And that it's
important doesn't change that. A redesigned parser must present an
almost-identical interface to the present implementation to get in;
this is NOT the place to argue for syntax changes, and any attempts to
change the syntax will in fact doom the effort.
The except to that is where crazy, unuseful syntax is actually a hindrance
to the definition of an EBNF grammar and its implementation, as we've
discussed earlier.
I have to say, I'm finding some really whacky things that work. Try this
code:
*
*
*
o
Or how about an [[Image:foo.jpg|With an [[Image:foo.jpg]] in its
caption...]] ?
Or even one with the table of contents: [[Image:foo.jpg|__TOC__]]
How do you think this <pretty> little piece of text renders?
Incidentally, I'm making good progress on the grammar. I've merged in most
of what was at meta, so at least there is only *one* grammar now (though
part of it is EBNF and the rest is BNF).
http://www.mediawiki.org/wiki/Markup_spec/BNF/Article
A recurring question is who is actually going to write this parser though.
Parser.php is 5000 lines and sanitizer.php
another 1300. And probably other files I don't
even know about. We're talking about months of work in the dark, with
no feedback, and no guarantee
that it will even get used. We're going to have to come up with a better
coding process than
"you write the code and when you're done we'll look at it".
Steve