Tutorial de PERL en castellano : Más difícil todavía

Preguntas frecuentemente preguntadas
Bibliografía.
Mi primer programa en Perl
Recursos Internet
Dando vueltas sobre lo mismo

Variables, interpolación y cadenas

Ya que hemos hecho nuestro primer programa, vamos a por el segundo. Supongamos que somos un político corrupto cualquiera, y que, dado el alto número de transacciones diarias por las cuales cobramos comisiones ilegales, decidimos escribir un programa en PERL que nos resuelva la difícil papeleta de calcularlas sobre la marcha. Ni cortos ni perezosos, nos puede servir lo siguiente (comile.pl):

print "Valor del inmueble? "; 
$valor = <STDIN>; 
$comision = $valor * 0.25; 
print "Comision = $comision\n"; 
Listado : Programa comile.pl

que da el resultado siguiente


C:\PROGS\PERL>perl comile.pl
Valor del inmueble 1000000 [Escrito por el usuario]
Comision = 250000

A partir de este momento, indicaremos en rojo las palabras clave de PERL, en verde las variables de PERL y en azul las órdenes de control.

En este ejemplo hay algunos elementos más de PERL. Como se ve, las variables se indican con un símbolo de $ (sumamente indicado para el ejemplo); en este caso se trata de variables escalares, que contienen un valor numérico o una cadena; a PERL le da exactamente igual que se trate de uno o de otro, la transformación se hace automáticamente. Y no hace falta ninguna declaración de variables; cada variable se declara en el momento que se usa, y si no se ha usado anteriormente, aparece automáticamente con el valor 0 o ´´ (cadena nula). Las variables en PERL tienen todas visibilidad global, si no se dice lo contrario.

El programa pide además, la intervención del usuario, leyendo en una variable lo que éste teclea. Para ello se utiliza un filehandle o puntero a un fichero abierto (el equivalente a un FILE* en C), que está disponible en todos los programas, la entrada estándar o stdin (estandard input); de la misma manera, también existe la salida estándar o stdout, es decir, que es lo mismo print STDOUT que print). El nombre de esta variable no está precedido por ningún símbolo de $ para indicar que se trata de un filehandle, o una variable que representa un fichero. Los angle brackets, o paréntesis angulares <>, indican que se lee del fichero una línea completa, hasta que el que teclea pulsa un retorno de carro.

Por último, se está utilizando la operación denominada interpolación de variables. Una variable incluida dentro de una cadena entre comillas dobles será sustituida por su valor (no en el caso de tratarse de comillas simples).

[ Preguntas frecuentemente preguntadas] [ Bibliografía.] [Mi primer programa en Perl] [ Recursos Internet] [ Dando vueltas sobre lo mismo]