in reply to My scalars swell

Non-ideal for maintenance, but if you just want to reduce the size of the running program you could cut out the individual arrays for each of the players. Create one large array and only store an index into it. A little helper sub to retrieve the six values based on name or ranking would be good for readability.

This will remove the overhead of the array ref for each player.

The only comments I could find on pre-allocation of perl arrays was from 1998 (google groups search). Your array is small enough (100k-200k items) that I don't think it matters alot, but you could try

my @big_array; $#big_array = $ESTIMATED_FINAL_SIZE; # declared at top of program # do stuff here
-jackdied