Firstly a comment on mod_aolserver: it's performance is pathetic.
I'm new to ACS, so I've been just installing and testing a demo setup
on a small Linux box, and a single ACS user was taking about 130M virtual with mod_aolserver and 30M with aolserver. Although the
install procedure for OpenACS/mod_aolserver is a work of art, mod_aolserver cannot be the way to go, at least with Apache 1.3.14.
Has anyone benchmarked these with ApacheBench?
Secondly, I don't think it's a coincidence that both Vignette and aD
are both dropping Tcl for Java. Now that Ajuba/Scriptics/SunLabs went
under, I think all companies whose existence is at state will bale on Tcl, either because their clients do indeed demand it, or just because at Internet speed, mindshare is important.
I also think Java is a really poor alternative, especially for ACS type of applications. So a part of the question is: if for technical reasons we don't want to get on the Java bandwagon, what are the alternatives? The answer will be judged not only by technical merit, but by looking into a crystal ball to see what will have mindshare 3 years from now.
I'd like to point out one alternative. It may seem off the wall if you don't know the components well, but I advise anyone who doesn't to invest some time into checking it out.
PyWX (http://pywx.idyll.org or pywx.sourceforge.net) runs Python under aolserver, and gives complete access to the Tcl C level API. Unlike Java, Python is a *great* language for writing web pages, probably even better than Tcl. Python also has excellent DB connectivity, as well as good XML handling (much better than Tcl). And the performace figures of aolserver/pywx that they showed at the Python9 conference were astonishingly good.
So the possibility exists with Python in under the aolserver, to
rewrite Tcl modules slovly over time in Python, with 100% interoperability with Tcl on aolserver. So if OpenACS is to break away from ACS, whether because with ACS 5 there will be 'Open' DBs supported, or because coding in Java just won't suit many of us for rapid prototyping, then maybe Python is the way to go for OpenACS.
All Tcl projects I've seen ported to Python have benefitted in the translation.
It might even be best to save the effort of the 4.x port and build Python translations now on the OpenACS 3.2.4 base.