CARACTERISTICAS

La estructura completa de Perl deriva ampliamente del lenguaje C. Perl es un lenguaje imperativo, con variables, expresiones, asignaciones, bloques de código delimitados por llaves, estructuras de control y subrutinas.

Perl también toma características de la programación shell. Todas las variables son marcadas con un signo precedente (sigil). Los sigil identifican inequívocamente los nombres de las variables, permitiendo a Perl tener una rica sintaxis. Notablemente, los sigil permiten interpolar variables directamente dentro de las cadenas de caracteres (strings). Como en los shell, Perl tiene muchas funciones integradas para tareas comunes y para acceder a los recursos del sistema.
Perl toma las listas del Lisp, hash (memoria asociativa) del AWK y expresiones regulares del sed. Todo esto simplifica y facilita todas las formas del análisis sintáctico, manejo de texto y tareas de gestión de datos.
Existen varias características acerca de Perl que son importantes de rescatar, las cuales se mencionan a

continuación:
1. Es fácil de usar, aunque es difícil de aprender. Cuando se ha programado en Perl por varias horas,
Perl se va a ir haciendo cada vez más fácil de implementar. Este lenguaje se desarrolló pensando
en que el lenguaje fuera práctico (fácil de usar, eficiente, y completo) en lugar de pequeño,
elegante y mínimo, además de que esta enfocado hacia un desarrollador que posee cierta cantidad
de conocimientos sobre el lenguaje y no así hacia un estudiante que esta aprendiendo.

2. Existen muy pocas cosas que no se pueden hacer con este lenguaje, por lo que se le puede
considerar como un lenguaje que no tiene fronteras. Con Perl se puede programar cualquier
necesidad que se tenga, ya que existen librerías y módulos para casi cualquier cosa que se
requiera, pero hay aplicaciones que requieren mucha rapidez en las cuales es mejor utilizar otros
lenguajes que no sean interpretados.

3. Es rápido de crear, ya que no posee funciones que, aunque sean bastante interesantes, hagan
disminuir la velocidad de desarrollo de una aplicación del lenguaje.

4. El lenguaje es feo, siendo esta una de las principales razones para su difícil aprendizaje, aunque
esto se compensa con el poder de alcance del lenguaje. Es por esto que Larry Wall escogió el
camello como el logotipo del lenguaje, ya que aunque es feo, siempre trabaja fuerte aún en
condiciones complicadas.

5. Se puede utilizar en varios entornos, como puede ser Windows 95, OS/2, Linux, entre muchos
otros, sin realizar cambios de código, siendo únicamente necesario la introducción del interprete
Perl correspondiente a cada sistema operativo .

6. Tiene características que soportan una variedad de paradigmas de programación, como la
estructural, funcional y la orientada a objetos. Al mismo tiempo, Perl no obliga a seguir ningún
paradigma en particular, ni obliga al programador a elegir alguna de ellas. No obstante, esta
característica es solo accesible en la versión 5.0.

7. Tiene incorporado un poderoso sistema de procesamiento de texto y una enorme colección de
módulos disponibles.

8. Ofrece una ayuda en línea desde la consola de comandos. Por ejemplo, para obtener ayuda sobre la
función print, se debe de escribir en una ventana MSDOS: perldoc –f print.

9. Se ejecuta desde la línea de comandos de una ventana del sistema operativo.

10. Es un lenguaje case-sensitive, lo cual hace referencia a la propiedad de un texto para presentarse
en mayúsculas o en minúsculas.

En Perl 5, se añadieron características para soportar estructuras de datos complejas, funciones de primer orden (p. e. clausuras como valores) y un modelo de programación orientada a objetos. Éstos incluyen referencias, paquetes y una ejecución de métodos basada en clases y la introducción de variables de ámbito léxico, que hizo más fácil escribir código robusto (junto con el pragma strict). Una característica principal introducida en Perl 5 fue la habilidad de empaquetar código reutilizable como módulos. Larry Wall indicó más adelante que "la intención del sistema de módulos de Perl 5 era apoyar el crecimiento de la cultura Perl en vez del núcleo de Perl".

Todas las versiones de Perl hacen el tipificado automático de datos y la gestión de memoria. El intérprete conoce el tipo y requerimientos de almacenamiento de cada objeto en el programa; reserva y libera espacio para ellos según sea necesario. Las conversiones legales de tipo se hacen de forma automática en tiempo de ejecución; las conversiones ilegales son consideradas errores fatales.