#! perl use warnings; use strict; scope_test(); sub scope_test{ my @data_in = ; my @data_out; for (0..$#data_in){ @data_out = call_back($data_in[$_], @data_out); } print "$_" for @data_out; } sub call_back{ my $element = shift; my @data_out = @_; push @data_out, $element; return @data_out; } __DATA__ line one line two line three