tie変数

tie変数は普通の変数のように見えて実はオブジェクトな変数。

スカラーのtie変数の書き方
(ほとんどプログラミングPerl丸うつし)

use strict;

package Person;
sub TIESCALAR { bless (\my $name, shift); }
sub STORE { ${$_[0]} = $_[1]; }
sub FETCH { ${$_[0]}; }

package main;
tie my $person, "Person";
$person = "kotaro";
print $person, "\n";

実行結果

kotaro

FETCHは参照の時に呼ばれるので、例えば

sub FETCH { "person" }

とすると、どんな値を入力してもpersonが出力される。

用法がいまいち頭に浮かばないなぁ。
ざっと概要を知るにとどめ、本格的に使う必要が出てきたら深く理解しようかな。