きちんと追いきれなかったので結構ぐだぐだです。 そもそも bless の挙動とは #!/usr/bin/perl use strict; use warnings; package FooBar; package main; my $a = { }; my $b = $a; print $a, "\n"; # HASH(0xb8002a0) print $b, "\n"; # HASH(0xb8002a0) bless $a, 'FooBar'; print $a, "\n"; # FooBar=HASH(0xb8002a0) print $b, "\n"; # FooBar=HASH(0xb8002a0) 前半はまぁいいでしょう。同じ無名ハッシュリファレンスをさしているので同じ内容が出力されます。 おもしろいのは後半です。 $a を bless しただけなのに,$b も bless され