use strict 下で、サブルーチン foo() に参照渡しされた配列に、別名 x を与えて、
(いちいち ${$ref_x}[0] とか書くかわりに) $x[0] と言う風にアクセスしたいのですが、
試したところ、下のリストのように、いちいちパッケージ名 Hoge で修飾しないと怒られる個所ができてし
まいます。

use strict の安全性と、別名を使ったアクセスの簡便性を両立させるのって無理なんで
しょうか _| ̄|○|||

use strict;


package Hoge;

sub foo(\@) {
  local *x = $_[0];
  print "(foo) ";
  foreach (@Hoge::x) {
    print "$_ ";
  }
  print "\n";
  push @Hoge::x, ('this', 'is', 'a', 'pen', '.');
}


package main;

my @bar = ('Hello', 'World', '!');
Hoge::foo(@bar);
print "(bar) @bar\n";