I'm about to start development of a 'web 2.0' site. I've learnt some lisp and now I need to get to grips with a web framework. Any recommendations? Scalability is obviously important. Cheers.
I build a fairly sophisticated project last year on top of TBNL (now Hunchentoot) and some other libraries (CL-WHO and CLSQL being the main ones). I don't think this set of libraries quite counts as a framework in the Rails/Pylons tradition - it's more like web.py[0]. It's worth noting that reddit used the same tool set before they rewrote it in Python. I can recommend it without hesitation, if you're looking for tools that stay out of your way.
[0]I have a strong suspicion that web.py was influenced by TBNL.
We use ucw for http://paragent.com (click on "DEMO" to see our app in action live). We actually use the older _dev branch of ucw, as we started over a year ago before the _ajax branch had really settled down. In fact, we've ended up removing much of the AJAX from the site for design reasons, and gone to a simpler page model with the latest site update. ucw has been pretty reliable. OTOH, we don't get hammered on the front end that much, so we may not be really stressing it. Most of our heavy-lifting is all on the back-end connections to the agents, where we have to maintain thousands of ssl connections. We have been very happy with our decision to go with Lisp.
We are using a slightly modified version of sbcl. Because of the large number of persistent connections we have to handle, we can run into issues with FD numbers and the default serve-event implementation. We have swapped in our own epoll-based serve-event to get around this. Otherwise, sbcl has worked very well for us.
Most of the sbcl hackers hang out in #lisp on irc.freenode.net, so the level of help available around the clock is amazing. There have been a couple times when we were pulling our hair out, got into the #lisp channel, and had a solution in a matter of minutes. Highly recommended, and a very smart group of people.
I've been using UCW with my own framework (lisp-on-lines) built on top. If you are going to be doing a lot of 'ajax', the UCW Ajax branch has already done most of the work for you.
That said, the learning curve is steep and there is no documentation beyond the examples + source code.
It's already very nice (using Lisp turned out to be really great) but some fairly commonly requested features are not yet in. Give it a try, send some questions to the support group, and see if it's right for you.
.... and they call Lisp programmers "Smug Weenies"?
That said, there are two options if the OP _really_ wanted to use Pylons in Common Lisp.
One could attempt to run Pylons under cl-python[1], which is "a fairly complete implementation of Python written in Common Lisp". Cl-python is currently Allegro-only, and likely will not run Pylons without modification.
Alternately, there is Python-on-lisp, which is a FFI to an embedded python interpreter AFAICT. While it will likely be trivial to get Pylons running this way, the interface between the languages seems very low-level, and there does not seem to be any source translation from a sexp syntax to python.
I don't think either way is a good option honestly. If the OP wanted a python framework, they probably would have asked for one, and you could hold your head high rather than ducking ;).
What makes it funny exactly? To use an analogy (a poor one, like all), if this were a medical advice board, and someone had said 'I've got aids and i'm looking for a good retroviral" and the reply was "Chemo! <ducking>"..... I don't find that funny at all... just smug cancer weenies.
[0]I have a strong suspicion that web.py was influenced by TBNL.