#!/usr/bin/perl use strict; use warnings; use Data::Dumper; { package Foo; sub new { my $class = shift; return bless( { field => "ABCDEF" }, $class ); } sub field : lvalue { my $self = shift; $self->{'field'}; } } my $f = Foo->new(); print $f->field, "\n"; $f->field = reverse $f->field; print $f->field, "\n"; print Dumper $f;