Claridad y Simplicidad
Para programadores con conocimientos en C, awk, sh o incluso BASIC es muy fácil empezar a aprender Perl. Además, dado que generalmente es interpretado, se puede seguir el ciclo escribir/probar muy rápidamente, ayudando aún más el aprendizaje.
La sintaxis es inicialmente muy clara; a medida que el usuario se va familiarizando con los constructos van apareciendo los "trucos sucios" y el poder. La curva de aprendizaje, por lo tanto, es suave (fácil de aprender), y prolongada: hay mucha potencia que extraerle a una sintaxis amplia y rica.
Ortogonalidad
Nula. Hay muchos constructos redundantes en casi cualquier aspecto del lenguaje así como funcionalidades dependientes del contexto en que se trabaja, lo cual redunda en que unas limiten la acción de otras.
Rango de aplicabilidad
Perl es suficientemente flexible y extensible para usar en casi cualquier tarea, desde tareas minúsculas de una línea hasta programas grandes y elaborados. Perl sirve tanto de reemplazo a sh como de lenguaje para proyectos que normalmente se harían en C/C++. Se puede enlazar código Perl dentro de programas C/C++, y se pueden utilizar rutinas C/C++ en programas en Perl.
Por supuesto, existen áreas donde Perl no otorga ninguna utilidad: dominios especializados, dedicados a problemas específicos. Prolog, por ejemplo, o sistemas matemáticos en general.
Ambiente de programación
Dentro de ambientes Unix la programación de aplicaciones Perlresulta ser lo suficientemente cómoda y confiable mediante cualquiera de las heramientas favoritas del programador.
En ambientes no Unix el ambiente puede resultar incómodo y poco usable. En estos casos serían útiles herramientas poderosas de edición como PerlBuilder, el cual es un ambiente integrado de desarrollo que soporta Perl.Sin embargo, los programas Perl son simplemente texto, de modo que conseguir una copia de Emacs o vi para Windows es probablemente la mejor solución
Documentación
Casi todo Perl está claramente documentado en páginas de manual otorgadas por voluntarios, o escritas por compañías formadas en torno a Perl (ver sección de Referencias). Hay muchos tutoriales en torno a las funcionalidades más avanzadas, tutoriales para principiantes, etc. La documentación es probablemente lo que abunda más en Perl, después de JAPHs (Just Another Perl Hacker).
No hay gramática en BNF para Perl: "`La gramática de Perl no puede reducirse a BNF. El trabajo de procesar perl se distribuye entre yacc, el analizador léxico, humo y espejos (Chaim Frenkel).
Hay muchos libros sobre Perl: Programming Perl (el conocido "Camel Book), escrito por el creador de Perl; The Perl Cookbook ("Ram Book), y Learning Perl ("Llama Book).
Por supuesto, la mejor documentación son probablemente los grupos de noticias (comp.lang.perl.*), listas de correo y el Web.
Editores
Cualquier editor de texto plano es suficiente para la realización de programas en Perl. En Unix puede ser Emacs, vi o pico. Para Windows es recomendable alguna versión compatible de los 3 mencionados anteriormente.
Depuradores
Perl incluye un parámetro de ejecución, -w, que se usa para lanzar warnings en tiempo de compilación. El intérprete arroja indicaciones incluso por errores a veces poco convencionales, como por ejemplo variables que se usan una sola vez (asume que es un error de tipeo). La mayor parte de los errores triviales se detectan en esta fase (que suele ser mucho más eficiente que la fase de compilado de C, por ejemplo).
Por otro lado, Perl incluye un depurador integrado en el intérprete. El depurador permite analizar estructuras de datos, evaluar expresiones, mostrar volcados de pila, ejecutar líneas o bloques de código, etc.
Portabilidad
Perl es generalmente portable; el mismo código puede llevarse de una arquitectura a otra sin problemas. Hay, por supuesto, algunas funciones que son dependientes de la plataforma (como manejo de señales, saltos de línea, ordenamiento de bytes, largo de números, archivos y muchos otros).
Perl existe en Unix (AIX, BSD/OS, dgux, DYNIX/ptx, FreeBSD, Linux, HP-UX, IRIX, MacOS X, MachTen PPC, NeXT 3 y 4, OpenBSD, OSF1, SCO, SINIX, Unicos, Solaris, SunOS, ...), DOS (MS-DOS, PC-DOS, OS/2, Windows 95/98, Windows NT, Cygwin, ...), MacOS, VMS, VOS, sistemas EBCDIC (OS/390, OS/400, VM/ESA, POSIX/BC), Acorn RISC OS, Amiga, Atari, BeOS, MPE/iX, Novell Netware, Plan9. Lo lamentable es tener que escribir confiando en el mínimo común denominador entre tantos sistemas diferentes. En general, si se tiene cuidado el código puede funcionar de una plataforma a otra de las más comunes, pero no hay que confiar en ello.
Costo de Uso
Esta es una de las grandes ventajas de Perl sobre otros lenguajes. Perl es software libre. Esto significa que el código de Perl está a libre disposición de cualquiera que quiera usarlo. Hay versiones de Perl que son distribuidas comercialmente, y empresas que dan soporte contractualmente, pero esto no significa que el acceso al lenguaje mismo se limite.
El que Perl sea software libre no significa que todo el código que uno escriba debe ponerse a libre disposición de cualquiera. No son raros los sistemas comerciales en Perl cuyo uso o distribución están limitados(Por ejemplo, los sistemas en WWW no tienen por qué entregar el código que están ejecutando), si bien no demasiadas casas comerciales de software otorgan licencias para usar programas en Perl (como se hace con otros lenguajes, sobre todo lenguajes compilados), seguramente por el problema práctico que implica esconder el código.
Ejecución
Para ejecutar código Perl no es necesaria gran potencia de CPU ni memoria. Hay sistemas desarrollados para integrar Perl en servidores web, por ejemplo, que hacen su ejecución más eficiente en términos de CPU (aunque usan más memoria), y máquinas virtuales especiales para hacer la ejecución más eficiente. Esto puede tener un costo económico asociado, por ser software comercial.
Traducción
En general el código Perl no necesita traducción explícita, aunque puede hacerse. Se paga un costo en tiempo de compilación cada vez que se ejecuta el programa, aunque usualmente es bajo.
Creación y desarrollo
Habiendo muchos JAPHs y siendo un lenguaje fácil de aprender, en general no es caro un desarrollo en Perl; mucho más barato que el desarrollo en lenguajes como C, usualmente.
Mantención
La mantención de sistemas en Perl es en general barata. Más aún, un código no ofuscado, bien escrito y bien comentado es en principio fácil de mantener.
Estandarización
Habiendo un grupo encargado del desarrollo general del lenguaje ("Perl Porters), no hay mayor discrepancia entre versiones, y se logra una compatibilidad hacia atrás y hacia adelante en general bastante alta (nótese que entre Perl 4 y Perl 5 hubo que hacer cambios a algunos programas, pero entre ambas versiones hubo más de tres años de desarrollo). Dado que el núcleo es software libre, ninguna compañía puede apropiarse del lenguaje y hacer versiones modificadas.
No existen versiones ISO o ANSI de Perl.