Perl y el Web - Otras Funcionalidades

7 - Otras Funcionalidades

Monografía creado por Chato. Extraido de: http://www.tejedoresdelweb.com/307/article-5813.html
04 de Enero de 2007
Manejo de Memoria

Perl emplaza memoria automáticamente para las variables que se usan, y la desplaza automáticamente cuando el programa se sale de su contexto, ya sea léxico (my) o temporal (local).

Funciones Recursivas

Perl soporta el uso de funciones recursivas si bien hay que ser cuidadoso con el entorno en que están definidas las variables. Por ejemplo,

sub fact
{
my $num=shift;
if ($num<=1)
{
return 1;
}
else
{
return $num*fact($num-1);
}
}

Esto retorna el resultado correcto (por ejemplo, fact(5)=120). Sin embargo, quitando el my de la declaración de $num se obtiene 1.

Llamadas a Sistema

Perl tiene completo acceso a las llamadas al sistema, al menos en Unix. La intefaz XS permite llamar funciones C desde Perl. Por otro lado, muchas llamadas al sistema ya están en funciones de bibliotecas o paquetes de Perl. La función syscall puede usarse para acceder a muchas de ellas; la función ioctl se puede utilizar para hacer control de IO; la función fcntl permite manipular descriptores de archivo, etc. Sistema de Objetos

Perl soporta programación orientada a objetos. Tal como se mencionó en Descripción Técnica-Encapsulación Perl provee el manejo de objetos en forma apropiada vía clases (en paquetes) que proveen los métodos para trabajar con los objetos que se definen.

Tipado Fuerte

Las variables simples (escalares, arreglos, hashes) en general no tienen tipos fuertemente enlazados a ellas. La referencias sí los tienen, y las referencias benditas (También conocidas como "objetos'') también los tienen. Bibliotecas

Perl soporta el uso de módulos, también conocidas como bibliotecas de funciones. Hay infinidad de bibliotecas en circulación; muchas de ellas pueden encontrarse en CPAN (Comprehensive Perl Archive Network).

Manejo de Excepciones

Las funciones eval y die se usan corrientemente para capturar y alzar excepciones, respectivamente.

Interfaces Gráficas

Tradicionalmente, las interfaces gráficas en Perl se hacían con Tk, un juego de controles inventado originalmente para Tcl. Hoy en día, el juego de controles GTK+, escrito en C, provee una interfaz que puede manejarse desde Perl. GTK+ se basa en un modelo de contenedores, manejadores y callbacks, y puede usarse para construir interfaces arbitrariamente complejas.

Este último ejemplo ilustra superficialmente el uso de la orientación a objetos de Perl (desde el punto de vista de quien usa una clase) y GTK+.

use Gtk '-init';
my $window = new Gtk::Window;
my $button = new Gtk::Button("Quit");
$button->signal_connect("clicked",
sub {Gtk->main_quit});
$window->add($button);
$window->show_all;
Gtk->main;

Aquí podemos apreciar como se crea una instancia de la clase Window, luego un botón. Luego se asigna un callback (Gtk->main_quit) a un evento (clicked) del botón y se pone el botón en el interior de la ventana. Finalmente se corre el ciclo principal de GTK+ (el cual esperará hasta que el botón reciba el evento (clicked), y entretanto hará las cosas esperadas, como marcar el botón si el puntero del mouse se posa sobre él, etc).

Sé el primero en opinar


Monografías relacionados con 'Perl y el Web'

Perl es un lenguaje interpretado optimizado para la lectura y extraccion de información de archivos... Más »
Revisamos varios lenguajes de programación que son usados en la actualidad para hacer páginas Web.... Más »
Existen varios lenguajes Script para el desarrollo de aplicaciones Web. La verdad es que ninguna... Más »
Se discute cómo mejorar el performance aumentando el número de servidores Web. Esto involucra distribuir... Más »
Quisiera por lo tanto partir ahora de un conjunto de apuntes generales, de una veloz... Más »

Autor y licencia de 'Perl y el Web'


Monografía de Chato. Extraido de: http://www.tejedoresdelweb.com/307/article-5813.html CopyLeft
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.