El hash referenciado por $paper 
en las líneas de la 6 a la 13 
es bendecido en la línea 15 con el nombre de la clase.
 1 sub new {
 2   my $class = shift;
 3   my ($identifier, $author, $publisher, $title,  $year, $url) = @_;
 4   $class->_incr_count();
 5 
 6   my $paper = {
 7     _identifier      => $identifier,
 8     _author    => $author,
 9     _publisher => $publisher,
10     _title     => $title,
11     _year      => $year,
12     _url       => $url
13   };
14 
15   bless  $paper, $class;
16 }
Esto establece un campo interno dentro de la representación 
interna del hash anónimo. En cierto sentido es %$paper
quien es bendecido, no $paper. La figura 6.1
ilustra este punto:
En la izquierda de la figura aparecen la referencia y el
referente antes de la bendición. En la parte de la derecha, después de ejecutar
bless  $paper, $class. Obsérvese que se ha añadido
una marca con el nombre de la clase-paquete que identifica la estructura
de datos como un objeto de esa clase.
Una vez que el dato apuntado por la referencia ha sido bendecido,
el operador  ref  aplicado a dicha referencia devuelve el
nombre del paquete (esto es, el nombre de la clase) en vez
de HASH.
Una comprobación de que quien es bendecido es el dato referido no la referencia la da el siguiente código:
$obj = new Biblio::Doc(1, "Asimov", "Bruguera", "Los propios dioses", 1989, "unknown"); $obj2 = $obj; print "obj2 es un ",ref($obj2),"\n";
Se imprimirá que obj2 es un Biblio::Doc
La función reftype en Scalar::Util permite obtener el tipo básico subyacente al objeto:
  DB<1> use Scalar::Util qw{reftype}
  DB<2> $x = bless {}, 'SomeClass'
  DB<3> p ref($x)
SomeClass
  DB<4> p reftype($x)
HASH
Casiano Rodríguez León
