You are on page 1of 23

Lenguaje de programacin diseado por Larry Wall en 1987.

Perl toma caractersticas del lenguaje C, del lenguaje interpretado bourne shell, Lisp, entre otros.

Perl 2, publicado en 1988, aport un mejor motor de expresiones regulares. Perl 3, publicado en1989, aadi soporte para datos binarios. 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 5 fue publicado el 17 de octubre de 1994. Fue casi una completa reescritura del intrprete y aadi muchas nuevas caractersticas al lenguaje, incluyendo objetos, referencias, paquetes y mdulos. Esto permiti estabilizar su ncleo principal, adems de permitir a los programadores de Perl aadirle nuevas caractersticas. El 26 de octubre de 1995, se cre el Comprehensive Perl Archive Network (CPAN). CPAN es una coleccin de sitios web que almacenan y distribuyen fuentes en Perl, binarios, documentacin, scripts y mdulos.

Perl es un lenguaje de propsito general originalmente desarrollado para la manipulacin de texto y que ahora es utilizado para un amplio rango de tareas incluyendo administracin de sistemas, desarrollo web, programacin en red, desarrollo de GUI y ms.

Sus principales caractersticas son que es fcil de usar, soporta tanto la programacin estructurada como la programacin orientada a objetos y la programacin funcional, tiene incorporado un poderoso sistema de procesamiento de texto y una enorme coleccin de mdulos disponibles. La estructura completa de Perl deriva ampliamente del lenguaje C. Perl es un lenguaje imperativo, con variables, expresiones, asignaciones, bloques de cdigo delimitados por llaves, estructuras de control y subrutinas.

Perl tambin toma caractersticas de la programacin shell. Todas las variables son marcadas con un Sigilo (signo) precedente[@,$,#,etc.] (Sigil, en ingls). Los sigilos identifican inequvocamente los nombres de las variables, permitiendo a Perl tener una rica sintaxis. Incluye referencias, paquetes y una ejecucin de mtodos basada en clases

Los intrpretes y compiladores de perl suelen ser ms usados en sistemas basados en UNIX (Incluyendo MacOS, BSD, etc.) ActivePerl evolvEd Text Editor 1.12 Alphatk 8.3fc7

Todas las versiones de Perl hacen el tipificado automtico de datos y la gestin de memoria. El intrprete conoce el tipo y requerimientos de almacenamiento de cada objeto en el programa; reserva y libera espacio para ellos segn sea necesario.
Las conversiones legales de tipo se hacen de forma automtica en tiempo de ejecucin.

A) VARIABLES ESCALARES. Los datos escalares son las variables simples y pueden contener enteros, reales, cadenas o referencias. Este tipo de variables van precedido siempre por $.
#!/usr/bin/perl #Declaro una variable my $hola; #Asigno valores $hola="Hola Mundo\n"; $adios="adios\n"; #Escribimos un poco en pantalla print $hola; $hola=23; print "Mira un nmero: $hola \n"; print "Y $adios";

B) VARIABLES ARREGLOS.- Un Array en Perl es como los de C, pero con la diferencia de que van precedidos del smbolo arroba @. En Perl no nos tenemos que preocupar de reservar la memoria ni gestionarla de ninguna forma. #!/usr/bin/perl #Declaramos la variable primer_array como un array my @primer_array; #asignamos unos cuatro valores al array @primer_array=(1,"dos",3,"cuatro"); #Aadimos un quinto de forma individual $primer_array[4]=5.5; #Mostramos el tercer elemento del array print "El tercero es= ".$primer_array[3]." \n";

Para sacar/insertar elementos se pueden usar las funciones pop y push. Que sacan o insertan, respectivamente, un elemento al final, es decir, tratan el array como #Aadimos con Push una push(@matriz, 5, 6, "siete"); pila. #Mostramos el ltimo elemento print "El ltimo es ". $matriz[$#matriz]."\n"; #sacamos con Pop $uno=pop(@matriz); print "He sacado $uno\n"; Para aadir dimensiones a los arrays, simplemente se aaden corchetes. my @array3D=([],[],[]); $array2D[0][0]=0; $array2D[0][1]=1; $array2D[1][0]=2; $array2D[1][1]=3; $array3D[0][0][0]=20; print $array2D[1][1]." ".$array3D[0][0][0]."\n";

C) ARREGLOS ASOCIATIVOS Un array asociativo en Perl o tabla hash, es un array donde los elementos son referenciados mediante claves en vez de una posicin. Para los array asociativos se utiliza el smbolo %.

#!/usr/bin/perl #asignamos valores a una tabla hash my %colorfruta; $colorfruta{"verde"}="kiwi"; $colorfruta{"amarillo"}="platano"; $colorfruta{"rojo"}="sanda"; $colorfruta{"naranja"}="naranja"; print "Una fruta verde es: ".$colorfruta{"verde"}."\n"; %dias=("lunes",L,"martes",M,"miercoles",X,"jueves",J,"viernes",V,"sa bado",S,"domingo",D); print "La representacin del Martes es :". $dias{"martes"}." \n";

Tiene estructuras de control orientado al bloque, similar a los de los lenguajes de programacin C y Java. Las condiciones estn rodeadas por parntesis y los bloques subordinados por llaves.
etiqueta while ( condicin ) {... } etiqueta while ( condicin ) {... } continue {... } etiqueta for ( expresin inicial; expresin condicional; expresin incremental ) {... } etiqueta foreach var ( lista ) {... } etiqueta foreach var ( lista ) {... } continue {... } if ( condicin ) {... } if ( condicin ) {... } else {... } if ( condicin ) {... } elsif ( condicin ) {... } else {... }

Tiene muchas caractersticas que facilitan la tarea del programador a costa de unos requerimientos de CPU y memoria mayores. stas incluyen gestin de memoria automtica; tipo de dato dinmico; strings, listas y hashes; expresiones regulares; introspeccin y una funcin eval(). La sintaxis de Perl refleja la idea de que "cosas que son diferentes deben parecer diferentes". Por ejemplo, escalares, arrays y hashes tienen diferente sigil. ndices de array y claves hash usan diferentes clases de parntesis. Strings y expresiones regulares tienen diferentes delimitadores estndar. Esta aproximacin puede contrastarse con lenguajes como Lisp, donde la misma construccin S-expresin y sintaxis bsica se usa para muchos y variados propsitos. Perl tiene caractersticas que soportan una variedad de paradigmas de programacin, como la imperativa, funcional y la orientada a objetos. Al mismo tiempo, Perl no obliga a seguir ningn paradigma en particular, ni obliga al programador a elegir alguna de ellas.

"Perl es un lenguaje para tener tu trabajo terminado".


Una consecuencia de esto es que Perl no es un lenguaje ordenado. Incluye caractersticas si la gente las usa, tolera excepciones a las reglas y emplea la heurstica para resolver ambigedades sintcticas. A veces los errores pueden ser difciles de encontrar.

Lenguaje Pegamento. Integracin entre sistemas operativos diferente Procesador de datos. Automatizacin de la administracin de sistemas Programacin web Bioinformtica Desarrollo de aplicaciones.

"Hay mas de una forma de hacerlo" -Larry Wall, autor del lenguaje de programacin Perl.

Claridad
Indentacin

Nombres de variables Comentarios Sencillez.

Gracias Dudas?

Carolina Medrano Francisco Santana Juventino Saucedo

You might also like