package alias; use strict; BEGIN { use base qw(Exporter); @alias::EXPORT = qw(make_alias); } sub make_alias { tie $_[0], __PACKAGE__, \$_[1]; } sub TIESCALAR { my($class, $target_ref) = @_; bless $target_ref, $class; } sub STORE { my $self = shift; $$self = shift; } sub FETCH { my $self = shift; $$self; } 1;