I'm not sure what this discussion is doing on wikien-l, but I'm happy to participate.
Tim Starling wrote:
Nicholas Knight wrote:
Call me when you're using a sane programming language. I'll be happy to help.
<aol>I wholeheartedly agree</aol>
Great! We already have three working modules in C++ (wikidiff, UTF-8 normalisation and waikiki) one in C (Chinese word splitting) one in Ocaml (texvc), one in Perl (EasyTimeline), a bot written in Python, plus Lee's incomplete test suite in Java, Timwi's incomplete parser in bison and Magnus' incomplete parser in C++.
I'm note completely sure of your tone here, I am bad at interpreting it. Are you or are you not being sarcastic here?
Really the possibilities are unlimited. My point was that PHP is not a very good excuse for avoiding MediaWiki, despite being often cited. It's easy to learn, but if it's against your religion or something, you can always code in something else.
I think a lot more people have this "PHP-religion-problem", really (I know at least three people in my immediate environment with this problem: a Pythonist, a Rubyist and a Perlist). If the modularisation of PHP is of a degree that it would indeed be possible to code new parts in other languages, I'd be happy to dive into a task that could be fulfilled in Python (I'm already an active pywikipediabot-developer).
Multi-lingual coding has major advantages and disadvantages. It can draw more people in the development process: Nicholas and I are most certainly not the only people avoiding MediaWiki because of PHP (calling it religion is unfair: there are very good reasons, perhaps PHP-ers don't care about them). Further, some languages may be better at other tasks. Disadvantages might be that it would be more difficult to have an overall view over the codebase, and that it might be slower. The latter, however, might be negligeble or not too important, depending on the task involved.
I am an experienced Python programmer with a relatively broad knowledge, only no database experience. But I suppose a number of tasks currently fulfilled by pywikipediabot could and should be done server-side or partly server-side. It would be much faster. I'm sure there are other points beside further development of Pywikipediabot where Python knowledge might be useful.
PHP *can* be a valid reason to refrain from MediaWiki. Some people care about things like language design, and since MediaWiki is of course OSS, those people will not get involved in a PHP project. Nicholas and I apparantly are two of them, I'm sure there are many others.
kind regards, Gerrit Holl.