6. Plassを使った
プロトタイプベースOOPの一例
humanオブジェクトを作成
use Plass;
my $human = plass
hello => sub { ,"Hi. My name is ".shift->name."." };
humanオブジェクトを継承したprogrammerオブジェクトを作成
my $programmer = $human->plass(
code => sub { bless { work => $_[1] }, 'Code' }
);
programmerオブジェクトを継承したmikeオブジェクトを作成
my $mike = $programmer->plass(
name => 'mike'
);
mikeさんからのご挨拶です。
$mike->hello; ### 'Hi. My name is mike.'
では彼にコードを作ってもらいます。
my $thing = $mike->code;
print ref( $thing ); ### 'Code'