2. Antecedentes y descripción
Fue creado en octubre de 1987 por Larry Wall.
Su propio autor señala que combina algunas
de las mejores capacidades de C, sed, awk y
sh.
Es con seguridad uno de los lenguajes más
utilizados para tareas pequeñas y de tamaño
mediano, dada la rapidez de aprendizaje.
3. Historia de PERL
En Octubre de 1987 Perl 1.0 es posteado en el grupo
comp.sources de Usenet.
En Junio de 1988 Es creada la versión 2.0 del lenguaje.
En Octubre de 1989 Perl 3.0 es lanzado bajo licencia GNU.
En Enero de 1991 "Programming Perl" (el libro del camello
rosado) de Larry Wall y Randal L.Schwartz es publicado. En
Marzo Perl 4.0 es creado bajo licencias GPL y Perl Artistic.
1994 Octubre Tim Bunce crea DBI, una Interface absracta de
Perl para Bases de Datos, y un driver DBI para Oracle.
Octubre Nace Perl 5.000
En marzo de 2000 Perl 5.6 es lanzado.
En 2008, Perl 5 continua siendo mantenido.
La ultima versión 5.14.2 (26 de septiembre de 2011)
4. PERL
Perl es un lenguaje de propósito general y como
tal está orientado básicamente al manejo de
strings y archivos de texto.
Es utilizado por muchos administradores de
sistemas para tareas cotidianas y repetitivas. Por
otro lado, Perl también soporta conexiones a C
(via XS) lo cual facilita llamadas a sistema, lo cual
combinado con el soporte a orientación a
objetos permite la realización de programas de
alta complejidad con mantenibilidad de rangos
aceptable.
5. PERL en WEB
Perl provee herramientas muy sencillas de uso
para la generación de páginas dinámicas vía
procesamiento de información de entrada/salida
a través del Web. Este hecho masificó el uso de
Perl en la creación de scripts para el web así
como un sin número de otras aplicaciones.
La utilidad de Perl en el web ha ido aumentando
notoriamente con el tiempo. Su afinidad con las
aplicaciones necesitadas en internet ha hecho
sumar esfuerzos en la creación de distintos
módulos y bibliotecas orientadas a distintos
temas Web.
6. ¿Por qué Perl es ocupado por tantos
programadores en la creación de CGIs ?
La respuesta a esta interrogante se encuentra
en una de las definiciones básicas de Perl
como lenguaje de programación : " Perl es un
lenguaje interpretado optimizado para el
procesamiento de archivos de texto plano,
extrayendo información de ellos e
imprimiendo reportes en base a esa
información“.
7. La mayoría de las aplicaciones CGI involucran la
manipulación de datos con acceso a programas
externos y aplicaciones. Perl provee una gran
cantidad de módulos tanto para la generación de
aplicaciones particulares así como la
administración de servidores web (en particular
Apache), facilitando muchas veces la realización
de tareas que en otra instancia resultarían
tediosas.
Otra orientación de Perl es el procesamiento de
información transmitida vía protocolo HTTP. Un
módulo especial de Perl (Lite) provee
funcionalidades para el trabajo en este contexto.
8. Expresiones Regulares
Una de las funcionalidades más poderosas de
Perl es su cualidad de realizar calce de patrones
de texto a través de "Expresiones Regulares", las
cuales representan una forma de expresar un
patrón.
En el contexto de web esta característica ha sido
tremendamente utilizada en la interpretación de
formularios y generación de páginas dinámicas
vía cgi. Una reciente utilidad de esta herramienta
del lenguaje se encuentra en el procesamiento
de documentos XML.
9. XML
El reciente módulo Perl XML:
Parser permitió a los programadores crear
aplicaciones utilizando XML, ocupando una
herramienta eficiente y de fácil uso para el
procesamiento de este tipo de documentos muy
utilizado en la actualidad. La característica inicial
de Perl, un lenguaje procesador de información en
texto, fue una excelente compatibilidad en este
punto.
10. En Perl, el programa canónico "Hola mundo" es:
#!/usr/bin/perl
print "¡Hola mundo!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 mundo! y un carácter
de nueva línea.
11. Perl tiene tres tipos de datos:
escalares,
listas
y hashes
$var # un escalar
@var # un array
%var # un hash
13. @animal=("gato","perro","vaca");
$animal[0] sería "gato"
$animal[1] sería "perro" y así hasta el último valor.
También podemos hacer referencia a varios valores
así:
$animal[1..2] equivale a los valores de $animal[1] y
$animal[2]
$animal[1,2] equivale a los valores de $animal[1] y
$animal[2]
14. Se pueden asociar los valores a las matrices asociadas de 2 modos:
%dia=(Lun,"Lunes",Mar,"Martes",Mie,"Miércoles",Jue,"Jueves",Vie,"Vi
ernes",Sab,"Sábado",Dom,"Domingo");
%dia=(
Lun=> "Lunes",
Mar=> "Martes",
Mie=> "Miércoles",
Jue=> "Jueves",
Vie=> "Viernes",
Sab=> "Sábado",
Dom=> "Domingo"
);
15. Expresiones regulares
$x =~ m/a(.)c/; # captura el carácter entre 'a' y 'c' y
lo guarda en $1
$x =~ s/abc/aBc/; # Convierte la b en mayúscula
$x =~ m/abc/i; # emparejamiento
independientemente de si están en mayúscula o
minúscula
$x =~ s/abc/aBc/g; # búsqueda y reemplazo global
(a lo largo de todo el string)