| ||||||||||||||||||
| ||||||||||||||||||
Maestría en Gerenciade las Finanzas y los Negocios
|
Pedro Bonillo |
|
CONTENIDO
Definición Aplicaciones 1.1 Usos 1.2 Funcionalidad 1.3 Ventajas y Desventajas del uso 1.4 Ejemplos de uso 1.5 Modulos 1.6 Instaladores disponibles en Web Breve Reseña Histórica Infografía
Perl (Practical Extraction and Report Language) es un lenguaje de programación, los lenguajes de programación representan la forma como los programadores pueden comunicarse con un sistema operativo (programa que permite administrar los recursos del computador: dispositivos de entrada y salida, archivos, procesos, etc.) y ejecutar acciones que en el computador se asocian a procesos y flujos de datos específicos. En especial Perl, es un lenguaje orientado a la manipulación y extracción de información de archivos de texto, esto hace que sea un lenguaje de amplio uso por los administradores de sistemas operativos, y el personal de sistemas que normalmente automatiza tareas asociadas a la administración de archivos (eliminación de archivos, registro de eventos en los archivos, etc.). Perl es un lenguaje interpretado (no sólo traduce las instrucciones, sino que además las interpreta detectando errores). Por eso en Perl, se habla de scripts, y no de programas, concepto referido principalmente a programas compilados al lenguaje máquina nativo del computador y el sistema operativo en el que se ejecuta. Seguidamente se estudian con detenimiento las principales aplicaciones del Leguaje Perl.
AplicacionesPerl es un lenguaje que hereda estructuras principalmente de los intérpretes de comandos del sistema operativo UNIX, especialmente el csh, y de otras utilidades estándar, como awk y sed. En realidad, puede hacer todo lo que hacen cualquiera de ellos y todos ellos juntos, y la mayoría de las veces de forma más simple, comprensible y fácil de depurar. Es una combinación de las características de los lenguajes mas usados por los programadores de sistemas, como son los shell del sistema operativo UNIX, los utilitarios ( que incluye un lenguaje interpretado propio) awk para formateo y tratamiento de texto e incluso características de Pascal, aunque su potencia se basa en la similitud con las mejores características del lenguaje estructurado C. En general cualquier utilidad que se necesite realizar en sh, awk, o sed, se puede implementar de una manera mas potente y sencilla mediante el lenguaje PERL.
Perl no tiene una plantilla para sus programas y si se adoptan algunos protocolos es solo por comodidad. Los programas de Perl, por lo regular, inician con la línea:#!/usr/bin/perlEsta línea, indica al SO que lo que sigue es un script de Perl, y que "Perl" (el programa con el cual debe ejecutarse) esta en el directorio "/usr/bin", la secuencia "#!" es una secuencia que UNIX reconoce, no Perl.Un método alterno, que funciona para otras plataformas, es: en lugar de colocar esa primera línea ejecutamos:Perl nombre_del_script.pl de modo que directamente se ejecuta el interprete de Perl pasándole como primer parámetro el script a ejecutar (los demás parámetros se tomaran como parámetros al programa). Si se requiere deberá sustituirse "Perl" por la ruta completa del programa y el nombre que el programa tenga.Perl reconoce tres clasificaciones básicas de datos, y dos especiales, por claridad, se denominaran clases a estas diversas clasificaciones, y tipos a las formas usuales de datos.Las diversas clases se distinguen entre si por el símbolo que antecede al nombre de la variable (por ejemplo $nombre es una variable de tipo escalar que se llama "nombre"), debe notarse que no hay relación entre variables del mismo nombre si son de clases distintas.A continuación, una tabla de las clases de datos y los tipos que contienen:
Clase |
Símbolo | Tipos |
Escalar | $ |
Entero,
Real, Cadena, Referencia* |
Arreglo |
@ |
Arreglo
de escalares |
Hash |
% |
Arreglo Asociativo de escalares |
Archivo |
(ninguno) | identificador
de Archivo |
Type |
Glob
* |
Cualquiera |
* Las referencias son exclusivas de Perl 5, son el equivalente a apuntadores.
Ventajas:
Reduce el ciclo de
programación. No tiene que compilar su aplicación, Perl es interpretado
y por ello sus programas pueden ser corridos en muchas plataformas sin
necesidad de ser recompilado.
Es portable, ya que hay un
interpretador de Perl para cada variedad de Unix y Windows, por lo que los
cambios que debe hacer a su aplicación son mínimos o nulos.
Puede hacer mejor muchas
cosas que serían más difíciles en otros lenguajes como C o Shell, como
la manipulación de archivos de texto.
La sintaxis de otros
lenguajes como Shell, Sed, AWK o C es muy similar a la de
Perl. Inclusive cuenta con herramientas para traducir código de Sed y AWK
a Perl de manera automática.
Es extensible. En Internet
puede conseguir una enorme cantidad de módulos los cuales pueden ser
incluidos en los programas sin ninguna dificultad.
No cuesta nada. Perl esta
protegido por una licencia artística, la cual permite su libre
distribución.
Es confiable y robusto.
Programas como dnswalk, Majordomo y otros están hechos en Perl.
Desventajas:
Cualquiera puede ver el código
fuente de su aplicación porque el código es interpretado y no compilado.
Por ser interpretado y no compilado su velocidad puede ser inferior a la versión en C en algunos casos.
A continuación se
ofrecen algunos programas de ejemplos de uso:
Programa Hola
mundo:
#!/usr/bin/perl
print "Hola Mundo\n"; #Saluda
Así, la ejecución en un sistema UNIX podría verse como:
>chmod 700 Hola.pl
>Hola.pl
Hola Mundo
En
Perl, como en la mayoría de los lenguajes de programación tenemos los módulos
o librerías o bibliotecas, según se prefiera llamar. Un módulo en Perl
es un conjunto de funciones u objetos que se pueden acceder desde un
script. Se puede acceder a los módulos utilizando la sentencia use,
como, por ejemplo:
....
#las librerías de acceso a BD
use DBI;
....
Para
usar módulos en Perl, también se pueden utilizar las sentencias do
y requiere además de use., las diferencias son:
1.
do $nombreFichero
lee el contenido de $nombreFichero en tiempo de ejecución.
2.
requiere $nombreFichero
funciona de forma similar a do $nombreFichero excepto que comprueba
antes si se ha leído el contenido del módulo $nombreFichero. Si
se ha leído, no lo vuelve a leer.
3.
use Modulo funciona de forma similar a requiere Modulo excepto que lo
hace en tiempo de compilación, en lugar de tiempo de ejecución por lo
que la ejecución del script es más rápida.
No
es de extrañar que en algunos casos los módulos librerías son dos
palabras separadas por ::;
esto es porque los módulos están organizados en una especie de jerarquía,
por ejemplo, el módulo LWP::UserAgent es para bajarse páginas de la WWW.
Todos (o casi todos) los módulos de Perl se encuentran en el CPAN (http://www.cpan.org/) y probablemente allí se encontrara cualquier modulo que haga falta. Los módulos al instalarlos no sólo instalan el código, instalan también los manuales correspondientes. Se puede consultar el manual escribiendo perldoc Modulo.
Utilizando
Internet se puede bajar desde http://www.perl.com
la versión de Perl. Hay versiones para casi todos los sistemas
operativos.
Una vez descargado el instalador, en Unix basta con seguir los siguientes pasos:
Descomprímalo con gunzip xxx.tar.gz
Desempaquételo en un directorio con tar -xvf xxx.tar.gz
Ejecute el script configure (por ejemplo configure -Dcc=gcc)
Escoja el sistema operativo sobre el cual correrá Perl
De aquí en adelante responderá muchas preguntas, de acuerdo a su sistema operativo (Crear las dependencias del programa con make depend, entre otros)
Luego corra los tests (el instalador le dirá como) y finalmente ejecute el comando make install.
Perl
es un lenguaje creado por Larry Wall, con el objetivo principal
de simplificar las tareas de administración de un sistema UNIX; en
realidad hoy en día se ha convertido en un lenguaje de propósito
general. La primera versión de PERL que llegó a ser
suficientemente conocida fue la versión 4, dada a conocer al mundo por
el libro
del camello. Esta versión se estuvo desarrollando desde 1991
a 1993, y coincidió con la popularidad del PERL como
lenguaje para programación de servidores de Internet; aunque
originalmente se había diseñado como lenguaje para administración de
sistemas.
La
versión 5 estable no apareció hasta octubre de 1994, y ha sido tan
popular que todavía se usa. Introdujo muchas de las características
que hacen al PERL tan fácil de programar, incluyendo
los módulos, las facilidades para programación dirigida a objetos,
referencias y mucho mejor documentación. Aparecen muchos otros libros,
tales como
Learning Perl.
A
partir de la versión 5.6, Perl sufrió una nueva transformación
(comenzando por la eliminación de muchos números en sus versiones).
Además, se incluye soporte pleno de caracteres internacionales y mejor
compilador. Se institucionaliza un sistema de patch pumpkin, o
encargado de cada nueva versión, que es el que decide qué va a entrar
de nuevo y qué no, sustituyendo a Larry Wall. Una empresa comercial, ActiveState,
que ya participaba activamente en su desarrollo, comienza a controlar más
de cerca al PERL, y a la vez, a crear herramientas más potentes (y
comerciales) para desarrollo con PERL.
A
partir del año 2000, se empieza a discutir sobre la nueva versión, la
6.
Una referencia mucho más completa se puede encontrar en la infografía Perl1117.
Infografía |
Perl111 Un tutorial bastante extenso, en html, escrito por Julián Melero Guervòs, es un de las referencias habituales. Es muy completo, y llega incluso a explicar como accederá bases de datos por ODBC, y contienes algunos consejos de estandarización del lenguaje. http://www.granavenida.com/perl/tutoperl-print.html |
Perl112 Un curso completo de nueve capítulos, creado por Mauricio A. Vásquez M., muestra características, funcionalidad, ventajas y optimizaciones del lenguaje de programación PERL. http://www.oocities.org/SiliconValley/Station/8266/perl/ |
Perl113 Desde Colombia, se presenta el Evangelio de Perl según Cjara, contiene un tutorial bastante avanzado, que incluye como usar referencias y otras características de la versión 5.0 del lenguaje. http://epq.com.co/~cjara/perl/tutorial.html |
Perl114 Una Introducción al lenguaje PERL, publicada en la pagina oficial de hospedaje de teleprogramadores.com, por David Hernández Tejada, muestra los diferentes tipos de datos, los operadores, y las estructuras de control fundamentales del lenguaje. http://webs.teleprogramadores.com/perl_introduccion/ |
Perl115 Resumen de utilización de las librerías y módulos de PERL. Realizado por Francisco Javier García Castellano, es una referencia básica de las diferentes CPAN que pueden utilizarse con el lenguaje de programación.. http://kal-el.ugr.es/~javi/dbi/modulos.htm |
Perl116 De la página de ayudas del sitio de hospedaje de lpis.com, se obtiene esta breve introducción al lenguaje PERL. Como una referencia orientada al uso fundamental y a las diferencias entre las versiones 4.3 y 5.X del lenguaje.http://www.lpis.com/ayudas/perl.html |
Perl117 Pagina oficial de Elaine Ashton, representa una reseña histórica completa desde el origen del lenguaje en 1960 hasta la actualidad, clasificando año tras año cada uno de los avances realizados sobre la formación del lenguaje. http://history.perl.org/PerlTimeline.html |
Perl118 Un Tutorial de trucos de programación en PERL y sus diferentes librerías en la versión 3.0, elaborada por Manuel de Vega Barreiro. Es una buena referencia para los administradores, contiene los códigos de error, funciones de encriptamiento, y ejecución remota por RPC y SOAP. http://www.linuxlots.com/~barreiro/spanish/perl/perl_como.html |
Perl119 Trabajo de investigación de José Vicente Núñez Zuleta, constituye una muy buena referencia para la obtención de destrezas básicas en la programación y depuración de programas, además de la relación con lenguajes como Javascript y la construcción de CGI.http://lucas.hispalinux.es/Tutoriales/PERL-CGI/perl-cgi-javascript/ |
Perl120 Pagina oficial de PERL en español, alojada en el centro de hospedaje de cronopio, contiene información en castellano del lenguaje, es uno de los mejores sitios con recursos para administradores y webmasters, presentando tutoriales, fuentes del lenguaje, librerías y búsquedas de tópicos relacionados.http://cronopio.net/perl/ |
Última
actualización 24FEB02
Copyright 2002
PNBR. Todos los derechos reservados.
REGRESAR A LA PAGINA DE TRABAJOS
Dirección:
http://www.oocities.org/es/pedrobonillo/
Tele/Fax:
+58 212 22737546/ +58 212
2737684
E-mail: pbonillo@cantv.net