desarrollado a finales de los años 80 por Larry Wall a partir otras herramientas de UNIX
como son: ed,grep,awk,c-shell, para la administración de tareas propias de sistemas UNIX.
Es un lenguaje de script de tipo BCPL (como TCL o PHP), muy semejante al AWK (de
hecho está basado en él), de tipo estructurado con trazas de orientación a objetos (no
completamente soportado de forma directa), que permite el desarrollo rápido de
aplicaciones y herramientas especialmente orientadas al tratamiento de textos y archivos,
aunque actualmente también se utiliza incluso para entornos graficos, en combinación con
sistemas como Perl/TK o GTK.
Larry Wall comenzó a trabajar en Perl en 1987 mientras trabajaba como programador en
Unisys y anunció la versión 1.0 en el grupo de noticias comp.sources.misc el 18 de
diciembre de 1987.
Características
Perl toma características del lenguaje C, del lenguaje interpretado bourne shell (sh), AWK,
sed, Lisp y, en un grado inferior, de muchos otros lenguajes de programación.
Estructuralmente, Perl está basado en un estilo de bloques como los del C o AWK, y fue
ampliamente adoptado por su destreza en el procesado de texto y no tener ninguna de las
limitaciones de los otros lenguajes de script.
No establece ninguna filosofía de programación concreta. No se puede decir que sea
orientado a objetos, modular o estructurado aunque soporta directamente todos estos
paradigmas y su punto fuerte son las labores de procesamiento de textos y archivos.
No es ni un compilador ni un intérprete, esta en un punto intermedio, cuando mandamos a
ejecutar un programa en Perl, se compila el código fuente a un código intermedio en
memoria que se optimiza como si se fuera a elaborar un programa ejecutable pero es
ejecutado por un motor, como si se tratase de un interprete.
Lenguaje de programación basado en scripts a casi cualquier plataforma. Es muy utilizado
para escribir CGIs.
Lenguaje optimizado para el escaneo de texto arbitrario de ficheros. Es también un buen
lenguaje para tareas de administración de sistemas. Es un lenguaje con intención de ser
práctico en lugar de bonito. Satisface las tres virtudes del programador: flojera, impaciencia
y petulancia.
Básicamente, es un lenguaje que se ha intentado que sea lo más natural posible, lo que
conlleva que en ocasiones nos encontremos estructuras poco habituales en un lenguaje de
este tipo:
print "hola EcuRed" if $saludo == 1;
Destaca también el uso de variables especiales, muy habituales en los lenguajes de tipo
script en los sistemas de tipo Unix. Estas variables permiten realizar una serie de
operaciones sobre los datos y los archivos que aportan a PERL una flexibilidad y potencia
enormes.
Además de variables que podemos encontrar en otros lenguajes como @ARGV (indica los
parámetros con los que se ha llamado al programa) o %ENV (indica las variables de
entorno de la aplicación), podemos utilizar también variables como $_ (que representa el
último dato que llegó por la entrada estandar), o $/, que nos indica si PERL debe enviar el
texto a la salida estandar inmediatamente (o al flujo de salida que le hayamos indicado
previamente).
PERL tiene implementadas las expresiones regulares, (regular expressions), lo que le da
una potencia muy grande en el procesamiento de textos.
Todas las variables son marcadas con un sigilo precedente (sigil). Los sigilos identifican
inequívocamente los nombres de las variables, permitiendo a Perl tener una rica sintaxis.
Notablemente, los sigilos 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.
La sintaxis de Perl refleja la idea de que "cosas que son diferentes deben parecer
diferentes". Por ejemplo, escalares, arrays y hashes tienen diferente sigilo. Índices de array
y claves hash usan diferentes clases de paréntesis. Strings y expresiones regulares tienen
diferentes delimitadores estándar. Esta aproximación puede contrastarse con lenguajes
como Lisp, donde la misma construcción S-expresión y sintaxis básica se usa para muchos
y variados propósitos.
Perl tiene características que soportan una variedad de paradigmas de programación, como
la imperativa, 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.
Estructura del lenguaje
Programa ejemplo Perl, el programa canónico "Hola EcuRed" es:
#!/usr/bin/perl print "¡Hola EcuRed!\n";
La primera línea contiene el shebang (par de caracteres que identifica el texto que sigue),
que le indica al sistema operativo dónde encontrar el intérprete de Perl. La segunda
imprime el string¡Hola EcuRed! y un carácter de nueva línea.
El shebang es la forma normal para invocar al intérprete en los sistemas Unix. Los sistemas
Windows pueden seguir utilizándolo o pueden asociar la extensión de archivo .pl con el
intérprete Perl. Algunos editores de texto también usan la línea shebang como una pista
sobre el modo de trabajo en que deben operar. Si el programa es ejecutado por perl y no
invocado por el shell, la línea que empieza por el shebang es parseada para interpretar las
opciones. En otro caso, es ignorada.
Información obtenida de http://www.ecured.cu/Perl
Perl en el programa Notepad++
Tutorial introductorio al Perl en el programa Notepad++
No hay comentarios.:
Publicar un comentario