There are a zillion different Wiki technologies out there. Let's start keeping notes on them, and their strengths and weaknesses as possible base techologies for Querki.
It turns out that there are a couple of good comparisons of Wiki techs out there. The best seems to be the [Wiki Matrix], which lists an enormous number of them with deep details.
One big question is which language to use. Options include:
- Perl -- the language that most irritates me. OO is fairly weak; however, Alex points out the [Closure Module], which adds a layer that makes the OO capabilities almost normal. Probably the fastest of the practical options. (Although TWiki manages to be pretty slow anyway.)
- Ruby -- my favorite language. But slow, and not well-supported. Scalability still sucks rocks, because it doesn't have true parallel threading.
- Python -- a possible middle-ground. Better supported than Ruby, although not as well as Perl. Mature. Decent OO capabilities, and fairly readable (if idiosyncratic) code. Comparatively slow next to Perl, although probably faster than Ruby.
- Java -- the basic compromise. Not the best language in many ways, but deeply powerful, well-supported, with lots of libraries and the ability to scale. May be the best choice when all is said and done.
- Scala -- the likely winner. Combines the depth of the JVM platform with a vastly better language than Java.