Nicholas Knight wrote:
By now it's probably obvious where I'm going with this. Could one of these methods (either storing a parsed and non-parsed version or the approach I took with "de-parsing") be used for some performance gain on Wikipedia's webserver?
De-parsing strikes me as a rather odd way to do it. Furthermore, Jimbo has often remarked that disk space is not a problem. (he may come to regret that remark when we hit a million articles.... but hey! ;)
I would suggest we consider semi-parsing. Save two versions of the article: a) wikitext b) the wikitext parsed into HTML, with wikilinks still as [[link]]. Note that this would not be a fully-formed HTML document, just a fragment since it would not have a head section or enclosing tags.
upon page read, it's b) that is inserted into the delivered page. Links are parsed live, since their status as existing / stub / ghost depends on the state of the database at that moment.
upon page edit, a) is sent to the edit box of the edit page