{ package Tie::Scalar::PushArray; sub TIESCALAR { my( $pkg, $ar ) = @_; bless { arrayref => $ar || [] }, $pkg } sub STORE { my $self = shift; push @{ $self->{'arrayref'} }, @_; } sub FETCH { my $self = shift; $self->{'arrayref'} } } tie our $VAR1, 'Tie::Scalar::PushArray'; do "data-dumper.out"; # load and eval. $_="VAR1=$VAR1\n"; # NB: It is necessary to do something like this # before trying to access $VAR1 as an arrayref! print "Loaded ".@$VAR1." elements\n";