$ perl -wl $x = "abc"; print "4-arg: ", substr($x="abc", 1, 1, ""); print "3-arg: ", substr($x="abc", 1, 1) = ""; __END__ 4-arg: b 3-arg: c #### sub FETCH { my $self=shift; substr($self->{string}, $self->{length}, $self->{offset}) } sub STORE { my ($self, $new) = @_; substr($self->{string}, $self->{length}, $self->{offset}, $new) }