Perl

De inforWiki
Saltar a: navegación, buscar

Definión

Perl significa "Practical Extraction and Report Language", algo así como lenguaje práctico. Este lenguaje fue creado por Larry Wall en 1987 (quien es uno de los net.gods más conocidos en la actualidad) con el objetivo principal de simplificar las tareas de administración de un sistema UNIX; en la actualidad (con su versión 5,005) se ha convertido en un lenguaje de propósito general, y una de las principales herramientas de un buen internetero y de un buen webmaster. Estructuralmente, Perl está basado en un estilo de bloques como los del C o AWK, tiene gran destreza procesando textos y no tiene límites respecto al resto de lenguajes de script.

Es un lenguaje de propósito general originalmente desarrollado para la manipulación de texto y que ahora es utilizado para un amplio rango de tareas incluyendo administración de sistemas, desarrollo web, programación en red, desarrollo de GUI y más. En un principio se previó que fuera práctico (facilidad de uso, eficiente, completo) en lugar de estéticamente bonito (pequeño, elegante, mínimo). Sus principales características son que es fácil de usar, soporta tanto la programación estructurada como la programación orientada a objetos y la programación funcional, tiene incorporado un poderoso sistema de procesamiento de texto y una enorme colección de módulos disponibles. inicio

Larry Wall es el tipo de personas que han hecho de la Internet lo que es ahora: un lugar con libre intercambio de ideas, donde los que saben de algo ayudan al que no sabe. Perl prácticamente sirve para todo. Todas las tareas de administración de UNIX se pueden simplificar con un programa en Perl. Se usa también para tratamiento y generación de ficheros de texto. También hay proyectos completos y complejos escritos en Perl. Logo-perl.gif

Comienzos de Perl

Larry Wall comenzó a trabajar en Perl en 1987 mientras trabajaba como programador en Unisys3 y anunció la versión 1.0 en el grupo de noticias comp.sources.misc el 18 de diciembre de 1987. El lenguaje se expandió rápidamente en los siguientes años. Perl 2, publicado en 1988, aportó un mejor motor de expresiones regulares. Perl 3, publicado en 1989, añadió soporte para datos binarios. Hasta 1991 la única documentación de Perl era una simple (y cada vez más larga) página de manual Unix. En 1991 se publicó Programming Perl (el libro del camello) y se convirtió en la referencia de facto del lenguaje.

Perl 4 trajo consigo una serie de lanzamientos de mantenimiento, culminando en Perl 4.036 en 1993. Perl 4 no marcó un gran cambio en el lenguaje, sino que identificó a la versión que estaba documentada en el libro. En este punto, Larry Wall abandonó Perl 4 para comenzar a trabajar en Perl 5. Perl 4 se quedaría en esa versión hasta hoy.

El desarrollo de Perl 5 continuó en 1994. La lista de correo perl5-porters se estableció en mayo de 1994 para coordinar el trabajo de adaptación de Perl 5 a diferentes plataformas. Es el primer foro para desarrollo, mantenimiento y adaptación de Perl 5. 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, hebras, y mejor compilador. Se institucionaliza la encarga de cada nueva versión (también conocida como sistema de patch pumpkin) 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, que será un gran salto sobre la versión anterior, pero todavía no está muy claro qué es lo que va a ser. Aparte de más rápida, más flexible y todo eso, todavía no se ha comenzado su desarrollo. manual oficial Una referencia mucho más completa se puede encontrar en la línea temporal de PERL.


Perl se llamó originalmente "Pearl". Larry Wall quería darle al lenguaje un nombre corto con connotaciones positivas; asegura que miró (y rechazó) todas las combinaciones de tres y cuatro letras del diccionario. También consideró nombrarlo como su esposa Gloria. Wall descubrió antes del lanzamiento oficial que ya existía un lenguaje de programación llamado PEARL y cambió la ortografía del nombre.

El nombre normalmente comienza con mayúscula (Perl) cuando se refiere al lenguaje y con minúscula (perl) cuando se refiere al propio programa intérprete debido a que los sistemas de ficheros Unix distinguen mayúsculas y minúsculas.

Larry solía ser un habitual del grupo de usenet comp.lang.perl, y era habitual que el propio Larry contestara a una pregunta de un principiante o a un error con un parche para solucionarlo. Hoy en día, desgraciadamente, ya no es tan común, porque el esfuerzo de trabajar con la comunidad Perl es muy grande. Wall.jpg

Características y funciones

Perl es un lenguaje que hereda ciertas estructuras de los intérpretes de comandos de UNIX, especialmente el csh, y de otras utilidades estándar, como awk y sed. Aparte de esto, está diseñado para 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 (aunque algunas veces no muy fácil de entender). Perl es un lenguaje interpretado, aunque en realidad, el intérprete de Perl compila los programas antes de ejecutarlos, algo ya común entre los intérpretes modernos. Se habla de scripts y no de programas, concepto referido principalmente a programas compilados al lenguaje máquina nativo del ordenador y sistema operativo en el que se ejecuta. El mejor libro de referencia sobre el Perl es Programming Perl, escrito por Larry Wall y otros (llamado el libro del camello). Aparte de la referencia y formas de uso de Perl, vienen ejemplos y reglas de estilo, y es bastante entretenido.

A pesar de que la versión actual del intérprete de Perl es la 5, a veces se puede uno encontrar la versión 4.036, el último patchlevel de la versión 4 y probablemente el más estable. Actualmente, en enero del 2003, la versión estable es la 5.8, con una nueva versión 6 en desarrollo. La versión 5 es prácticamente compatible 100% con la 4; virtualmente todos los scripts que funcionan para la versión 4 lo hacen también en la 5. Aunque Perl ha sido desarrollado originalmente en un entorno UNIX, actualmente hay versiones para casi todos los sistemas operativos: Windows XP, Amiga, MacOS, etc. Los scripts son compatibles entre las diversas plataformas, de forma que es un verdadero lenguaje multiplataforma. Muchos fabricantes lo incluyen en sus versiones de UNIX; también el Linux lo incluye. perl oficial

La primera versión de PERL que llegó a ser suficientemente conocida fue la versión 4, dada a conocer al mundo como "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. A partir de esto se escriben muchos otros libros, tales como Learning Perl. Tpf logo transparent.png

La forma del lenguaje facilita la programación rápida, el hacer un programa rápido para que funcione. Esto hace también que se utilice para hacer prototipos rápidos de algún algoritmo que queremos ver funcionar antes de programarlo en un lenguaje más eficiente. Últimamente se ha utilizado en la escritura de CGI (common gateway interface), o scripts ejecutados desde páginas de la World Wide Web. La mayoría de los programas que necesitan otro para procesar formularios en Internet llevan la extensión .pl, lo cual denota que están escritos en Perl. En general, los programas en Perl se ejecutan en el servidor, como todos los programas CGI, a diferencia de otros programas ejecutados por el cliente (generalmente un navegador como el Internet Explorer de Microchof o el Navigator), como aquellos escritos en JavaScript o Java. Existen además extensiones al Apache (mod_perl) que permiten ejecutar directamente programas en Perl desde el servidor de HTTP. Mediante una serie de módulos adicionales, tales como el DBD o el ODBC, Perl puede servir para acceder a bases de datos, desde BD gratuitas como MySQL hasta el Microsoft SQL server usando ODBC.