On Fri, Jun 26, 2009 at 7:16 AM, Aryeh GregorSimetrical+wikilist@gmail.com wrote:
On Fri, Jun 26, 2009 at 6:33 AM, Roan Kattouwroan.kattouw@gmail.com wrote:
The reason I believe breaking up templates improves performance is this: they're typically of the form {{#if:{{{someparam|}}}|{{foo}}|{{bar}}}} . The preprocessor will see that this is a parser function call with three arguments, and expand all three of them before it runs the #if hook.
I thought this was fixed ages ago with the new preprocessor.
My understanding has been that the PREprocessor expands all branches, by looking up and substituting transcluded templates and similar things, but that the actual processor only evaluates the branches that it needs. That's a lot faster than actually evaluating all branches (which is how things originally worked), but not quite as effective as if the dead branches were ignored entirely.
(I could be totally wrong however.)
-Robert Rohde