# memory use 2368k
my @r = 1...1000000;
# memory use 62804k
@r = reverse @r;
# memory use 62812k
####
sub r{ @_[ 0 .. $#_ ] = reverse @_; }
# memory use 2368k
my @r = 1 .. 1000000;
# memory use 62812k;
r @r;
# memory use 78664k;
####
#! perl -slw
use strict;
use Benchmark qw[ cmpthese ];
sub r{ @_[ 0 .. $#_ ] = reverse @_ }
our @n = 1 .. 1000;
cmpthese( -3, {
normal_reverse => q[ my @r = reverse @n; ],
aliased_reverse => q[ my @r = r( @n ); ],
});
__END__
P:\test>320771
Rate aliased_reverse normal_reverse
aliased_reverse 1360/s -- -78%
normal_reverse 6110/s 349% --