On 23/08/12 07:17, Ryan Lane wrote:
I hear what
you're saying Ryan - although in fairness there is some history
there, and also some very significant challenges on all sides to actually
communicate. However, one has to keep in mind that sometimes the
definition of "end user" can be pretty different. On reading this thread,
I have the sense that lots of people commenting here see template
creators/curators as the "end user" - but they aren't in any conventional
sense. The end user is the person who actually uses the template.
The end-users for scribunto are template editors. The way the template
is called from articles is almost exactly the same. The syntax is so
similar to how it currently is that It does nothing to change the
experience for a normal editor.
I'd bet that most templates will keep the same arguments when switched
over, and the syntax will be mass changed by a bot.
I think there will be some changes to template invocations. For
example, a typical coord invocation looks like this:
{{Coord|33|51|35.9|S|151|12|40|E}}
With the string processing facilities that Lua provides, that might
change to:
{{Coord|33°51'35.9"S 151°12'40"E}}
Of course, backwards compatibility would need to be maintained, but
that's easy enough.
The same thing would have happened if we enabled StringFunctions, but
the performance would have been worse than the original, whereas with
Lua, we should be able to parse simple strings like that with a
performance much better than the original coord template.
There will still be double braces and pipes, but fixing that is the
domain of VisualEditor.
Our metatemplate authors enjoy a challenge. You have to have that kind
of mindset to attempt to do complex things in the existing wikitext
syntax. I would expect some of them to try really complex things in Lua.
Some of the applications might be whimsical, like a code snippet
template for [[Lisp (programming language)]] that contains a complete
Lisp interpreter. Others will be more practical, perhaps navbox
generation based on a template-free wikitext specification hosted on a
separate page.
If we extrapolate from the experience with metatemplates, we can
expect Wikipedia's community to tolerate such developments until
performance limits are reached, and then to tolerate it some more
until they are significantly exceeded. But Lua is so fast compared to
wikitext that our Lua developers will have to exercise a lot of
creativity to find applications that will exceed the performance limits.
-- Tim Starling