package Test; use Moose; my $prepend = '/some_string/'; has 'fname' => (is => 'rw', isa => 'Str'); has 'appended' => ( is => 'rw', isa => 'Str', # lazy => 1, #builder => 'set_appended' ); 1; sub BUILDARGS { my $class = shift; my %args = ref $_[0] ? %{$_[0]} : @_; $args{appended} = $prepend . $args{appended} if exists $args{appended}; return \%args; } sub set_appended { my $self = shift; my $value = $self->appended; return $prepend . $value; }