smarty, tengo entendido que es un sistema de plantillas.
Un
framework MVC añade a la funcionalidad del lenguaje (el control) y el sistema de plantillas (la vista) la gestión de la base de datos (el modelo).
En cuanto a qué usar yo creo que se puede resolver según la experiencia del equipo y la disciplina a imponer: si se quiere resolver un sitio web en el que solo son necesarias unas cuantas páginas, con un sistema de plantillas se podría solventar rápidamente. En cambio, si necesitamos manejar bien el sistema de plantillas (por parte del diseñador), gestión de los datos (por parte del programador de la base de datos) y unirlos junto con una gestión de la información (control de la información, usuarios, productos, servicios, tratamiento y procesado de información externa en otros formatos, etc,etc) entonces sí que es aconsejable usar un framework. Teniendo en cuanto que su mantenimiento Y su escalabilidad es mucho mayor que la de un sistema de plantillas, a medida que el proyecto crece.
Como depende de la experiencia del equipo, será ellos los que determinen el lenguaje a emplear. Los hay de muchos tipos para casi todos los lenguajes modernos (ver el enlace anterior a MVC. En la versión inglesa de esta página hay muchos más).
También pueden decidir en un momento dado, que todos ellos se ponen a aprender un nuevo determinado entorno de trabajo: uno o dos de ellos se descargan y/o compran varios
frameworks y comienzan a evaluarlos. Decidido por uno de ellos, el resto del equipo se toma un par de días/semanas para aprender a manejarlo. Si después de una primera realización todo el mundo está contento con el resultado (facilidad de aprendizaje, documentación, soporte, mantenimiento, escalabilidad, etc.) se continúa con él. Y si no, se prueba otro.
En Perl tienes muchos
frameworks: Maypole, CGI::Application, Jifty y Catalyst son los más famosos. Catalyst es el más profesional y del que salen módulos de apoyo prácticamente a diario. Naturalmente, la curva de aprendizaje es muy alta, pero una vez superada se puede realizar un sitio web, con un wiki, en menos de 5 minutos.