Perlでアクセッサを実装

sub hoge{
  my $self = shift;

  if(@_) {
    $self->{name} = $_[0];
  }
  return $self->{name};
}

と、いちいち関数を書いてあげにゃなりませんが、
Class::Accessorを継承して

package Sample;

use base qw(Class::Accessor);
__PACKAGE__->mk_accessors(qw(hoge ........));

とやると、mk_accessorsに記述した値を

my $sample = Sample->new();

# get
my $val = $sample->hoge();

# set
$sample->hoge($val);

のようにして扱うことができます。
ただ、継承の継承とかやっていくとどうしていいかよく分からなくなる...

※こんなネタくそ古いのでだまってMoose使おうよ。かわいいよ。