El ''hash''
%EXPORT_TAGS
es usado por módulos que proveen un gran número de funciones,
como es el caso de CGI
o POSIX
para crear grupos de alto nivel de símbolos relacionados. Por ejemplo:
%EXPORT_TAGS = ( Functions => [ qw(F1 F2 Op_Func) ], Variables => [ qw(@List %Table) ], );
Un símbolo de la lista de importación precedido de dos puntos indica una etiqueta:
use NuestroModulo qw(:Functions %Table);
Como se ha dicho, el módulo CGI.pm
funciona con esta filosofía. Véase
el siguiente ejemplo que usa CGI
en el que se carga el grupo
:standard
:
$ cat -n cgitaste.pl 1 #!/usr/bin/perl -w 2 use CGI qw(:standard); 3 4 print header; 5 print start_html('Un ejemplo Sencillo'), 6 h1('Un ejemplo Sencillo'), 7 start_form, 8 "¿Tu nombre? ",textfield('nombre'), 9 p, 10 "¿Matriculado en?", 11 checkbox_group(-name=>'estudios', 12 -values=>['Sistemas','Gestión','Superior'], 13 -defaults=>['sistemas']), 14 p, 15 "¿Lenguaje favorito? ", 16 popup_menu(-name=>'len', 17 -values=>['C','C++','Pascal','Java','Lisp','Prolog','Python','Perl']), 18 p, 19 submit(-name=>"Enviar"), 20 end_form, 21 hr; 22 23 if (param()) { 24 print h1('Tus datos:'), 25 p, 26 "Nombre: ",em(param('nombre')), 27 p, 28 "Estudios: ",em(join(", ",param('estudios'))), 29 p, 30 "Lenguaje favorito: ",em(param('len')), 31 hr; 32 } 33 print end_html;Puede ejecutar este ejemplo en http://nereida.deioc.ull.es/lhp-cgi/cgitaste.pl.
Casiano Rodríguez León