Yo he visto desarrollar una web a golpe de teclado, con Perl, a la misma velocidad que lo hacen mis programadores a golpe de ratón con el Visual Studio y su .Net.
Y eso es lo más importante: la velocidad de desarrollo del programador, ya que es lo más caro de todo el proceso. Importa menos si luego los programas son lentos: se arregla comprando una CPU más rápida (el hardware es muy barato, en comparación).
Pero desarrollar bien, y de forma rápida, requiere mucho tiempo, experiencia, dedicación... y no importa en qué lenguaje.
En cuanto a la programación web, puedes quedarte asombrado del número de herramientas, entornos de trabajo, sistemas de plantillas, generación de páginas dinámicas, código empotrado, conexión con bases de datos, etc, etc, que existen para Perl. De hecho, lo difícil es elegir qué sistemas usar.
Hoy en día, el sistema CGI está un poco en desuso también en Perl, pero, en realidad, lo que está en desuso es la idea de hacer un programa (el cgi) que resuelva todo el tema de generación de páginas dinámicas, y en su lugar lo que se usa es un
framework (entorno de trabajo) que permita el modelo MVC. Internamente, muchas herramientas siguen siendo CGI, en cuanto al protocolo (la petición del usuario genera la ejecución de un programa por parte del servidor web, que devuelve al usuario el resultado final en formato HTML, para que aparezca en el navegador del usuario), pero aíslan al programador de muchas tareas tediosas que los programas CGI requieren.
El PHP, realiza una labor idéntica a un cgi. La diferencia es que el intérprete de PHP está arrancado, como módulo (el mod_php) por el servidor web, por lo que está residente y cargado en memoria, lo cual es una ventaja con la técnica CGI habitual, en la que el servidor web inicia un nuevo proceso en el sistema (el intérprete) al que se le pasa el programa a ejecutar. Es claro que este último proceso es más costoso en recursos, que si el intérprete estuviera ya cargado por el servidor web. Bueno, pues en Perl existe el
mod_perl, el
perl persistente, el
fast cgi y alguna cosilla más, para dar las mismas prestaciones que Perl, en cuestión de velocidad de respuesta. Con mod_perl hay unas mejoras de rendimiento del 400% al 1200% con respecto al procedimiento CGI clásico.
Hoy en día, el sistema más usado en Perl es
Catalyst, pero requiere saber conceptos típicos del MVC, más uso de la técnica de acceso a base de datos
DBIx::Class. Algo más sencillo es usar un entorno de trabajo como
CGI::Application. O más sencillo con sistemas de plantillas como
HTML::Template, etc. etc., hasta llegar a lo
mínimo con lo que se puede empezar: el módulo
CGI.