I think C and its minions are horrible programming languages, but that is just my feeling.
Many years ago and long before Catalyst, Dancer or even Mason was even thought of, the first big web-project I did used Perl to extract data from a database and export it as an XML-file which was then transformed "server-side" into HTML through XSLT. XSLT was acting as a kind of proto-templating framework. If I remember well, it was early versions of AxKit and Sablotron all the way then and although the set-up was very difficult, once it ran inside the Apache-server it worked perfectly.
A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James