Perl es un lenguaje de programación diseñado por Larry Wall en 1987. 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
.
.
VENTAJAS
Las
principales ventajas de utilizar Perl se
encuentran justamente en los objetivos que se
tenían cuando se creo el lenguaje: Perl es un eficiente, completo y fácil de usar.
Otra de las ventajas de Perl está en la cantidad de aplicaciones que se le pueden dar al
lenguaje en campos como la administración de sistemas, aplicaciones web, entre otros.
Además , el hecho de que Perl esté disponible para gran cantidad de sistemas operativos,
lo hacen un lenguaje accesible a cualquier usuario, sirviendo esto para extender la comunidad
que existe acreedor del lenguaje y así convertir a Perl en un lenguaje muy usado y muy
confiable.
tenían cuando se creo el lenguaje: Perl es un eficiente, completo y fácil de usar.
Otra de las ventajas de Perl está en la cantidad de aplicaciones que se le pueden dar al
lenguaje en campos como la administración de sistemas, aplicaciones web, entre otros.
Además , el hecho de que Perl esté disponible para gran cantidad de sistemas operativos,
lo hacen un lenguaje accesible a cualquier usuario, sirviendo esto para extender la comunidad
que existe acreedor del lenguaje y así convertir a Perl en un lenguaje muy usado y muy
confiable.
La
principal desventaja de Perl se encuentra en
el tiempo de ejecución de un programa, ya que un programa Perl es
compilado cada vez que se ejecuta, por lo que puede resultar más lento que un programa similar escrito en otro
lenguaje.
Sin embargo, se han implementado técnicas para mejorar esta situación como guardar el
compilado del programa en memoria y retrasar la compilación hasta que sea necesitada.
CARACTERÍSTICAS
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 Sigilo precedente (Sigil, en inglés).
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(string). Como en los shell, Perl tiene muchas funciones integradas para tareas comunes y para acceder a los recursos del sistema.
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(string). 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.
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".
É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.
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.
DISEÑO
El diseño de Perl puede ser
entendido como una respuesta a tres amplias tendencias de la industria
informática: rebaja de los costes en el hardware, aumento de los costes
laborales y las mejoras en la tecnología de compiladores.
Anteriormente, muchos lenguajes de ordenador como el Fortran y C, fueron diseñados para hacer un uso eficiente de un hardware caro. En contraste, Perl es diseñado para hacer un uso eficiente de los costosos programadores de ordenador.
Anteriormente, muchos lenguajes de ordenador como el Fortran y C, fueron diseñados para hacer un uso eficiente de un hardware caro. En contraste, Perl es diseñado para hacer un uso eficiente de los costosos programadores de ordenador.
Perl tiene muchas características
que facilitan la tarea del programador a costa de unos requerimientos de CPU y
memoria mayores. Éstas incluyen gestión de memoria automática; tipo de dato dinámico; strings, listas
y hashes; expresiones regulares; introspección y una función eval().
Larry Wall fue adiestrado como
lingüista y el diseño de Perl ha sido muy aleccionado con principios
lingüísticos. Ejemplos incluyen la Codificación Huffman , buena distribución y una larga colección de primitivas del lenguaje.
Perl favorece las construcciones del lenguaje, tan naturales, como para los humanos son la lectura y la escritura, incluso si eso hace más complicado al intérprete Perl.
Perl favorece las construcciones del lenguaje, tan naturales, como para los humanos son la lectura y la escritura, incluso si eso hace más complicado al intérprete Perl.
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.
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.
DISPONIBILIDAD
Perl es software libre y está licenciado bajo la Licencia Artística y la GNU General Public License.
Existen distribuciones disponibles para la mayoría de sistemas operativos. Está especialmente extendido en Unix y en sistemas similares, pero ha sido portado a las plataformas más modernas (y otras más obsoletas).
Con sólo seis excepciones confirmadas, puede ser compilado desde el código fuente en todos los Unix, compatibles POSIX o cualquier otra plataforma Unix compatible.
Sin embargo, esto no es normalmente necesario, porque Perl está incluido por defecto en la instalación de los sistemas operativos más populares.
Existen distribuciones disponibles para la mayoría de sistemas operativos. Está especialmente extendido en Unix y en sistemas similares, pero ha sido portado a las plataformas más modernas (y otras más obsoletas).
Con sólo seis excepciones confirmadas, puede ser compilado desde el código fuente en todos los Unix, compatibles POSIX o cualquier otra plataforma Unix compatible.
Sin embargo, esto no es normalmente necesario, porque Perl está incluido por defecto en la instalación de los sistemas operativos más populares.
Debido a los cambios especiales
necesarios para soportar al Mac OS Classic, existe una adaptación especial llamada MacPerl.
GNU/Linux
Perl está pre instalado en las
distribuciones más populares de GNU/Linux incluyendo Gentoo, Slackware, Mandriva, Debian, RedHat y SUSE.
Windows
Los usuarios de Microsoft Windows normalmente instalan una distribución binaria de
Perl.
Compilar Perl desde el código fuente bajo Windows es posible, pero la mayoría de las instalaciones no disponen del necesario compilador de C.
Compilar Perl desde el código fuente bajo Windows es posible, pero la mayoría de las instalaciones no disponen del necesario compilador de C.
La capa de emulación Cygwin proporciona
otra forma de correr Perl bajo Windows. Cygwin proporciona en entorno parecido
al Unix en Windows que incluye gcc, por lo que compilar Perl desde el código es una opción
accesible para los usuarios que prefieren esta opción.
En junio de 2006, win32.perl.org fue
lanzado por Adam Kennedy en nombre de la Fundación Perl. Es una
comunidad web "para todo lo relacionado con Windows y Perl".
Versiones
Perl
|
|
Desarrollador(es)
|
|
Larry Wall
perl.org |
|
Información general
|
|
Paradigma
|
multiparadigma, funcional,imperativa, orientado a objetos (basado en clases),reflexiva, procedural,eventos, genérica
|
Apareció en
|
18 de diciembre de 1987(28 años, 7 meses y 26 días)
|
Diseñado por
|
Larry Wall
|
Última versión estable
|
5.24.0 (09 de mayo de 2016(3 meses y 4 días))
|
Última versión en pruebas
|
5.23.8 (20 de febrero de 2016(5 meses y 22 días))
|
Tipo de
dato
|
dinámico
|
Implementaciones
|
Perl, mod_perl,
embperl
|
Dialectos
|
Perl 5, Perl 6
|
Influido por
|
AWK, Smalltalk 80, Lisp, C,C++, Pascal, sed, Unix shell
|
Ha influido a
|
Python, PHP, Ruby,ECMAScript, LPC, Windows PowerShell, JavaScript,Falcon
|
Sistema operativo
|
Multiplataforma, muchos(más
de 100)
|
Licencia
|
GPL, Licencia Artística
|
Especificaciones
Perl es un lenguaje de
programación diseñado por Larry Wall creado en 1987. Perl toma características del C, del lenguaje interpretado shell
(sh), AWK,
sed, Lisp y, en un grado inferior, de muchos otros lenguajes de programación.
Se previó que fuera práctico (facilidad de uso, eficiente, completo) en lugar de hermoso (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.
Se previó que fuera práctico (facilidad de uso, eficiente, completo) en lugar de hermoso (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.
Nombre
Perl se llamó originalmente "Pearl", por la Parábola de la Perla. 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úsculas (perl) cuando se refiere al propio programa intérprete debido a que los sistemas de ficheros Unix distinguen mayúsculas y minúsculas.
Antes del lanzamiento de la primera edición de Programming Perl era común referirse al lenguaje como perl; Randal L. Schwartz, sin embargo, forzó el nombre en mayúscula en el libro para que destacara mejor cuando fuera impreso. La distinción fue después adoptada por la comunidad.
El símbolo del dromedario
Perl se simboliza generalmente por un dromedario (camello arábigo), que fue la imagen elegida por el editor O'Reilly para la cubierta de Programming Perl, que por consiguiente adquirió el nombre de El Libro del Dromedario. O'Reilly es propietario de este símbolo como marca registrada, pero dice que usa sus derechos legales sólo para proteger la "integridad e impacto de este símbolo" . O'Reilly permite el uso no comercial del símbolo, y ofrece logos Programming Republic of Perl y botones Powered by Perl.
Historia
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. 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 dromedario) y se convirtió en la referencia de facto del lenguaje. Al mismo tiempo, el número de versión de Perl saltó a 4, no por marcar un gran cambio en el lenguaje, sino por identificar a la versión que estaba documentada en el libro.
Perl 4 trajo consigo una serie de lanzamientos de mantenimiento, culminando en Perl 4.036 en 1993. 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.
No hay comentarios:
Publicar un comentario