#!/usr/bin/perl -- use strict; use warnings; my %foo; my @bar; $foo{bar}=\@bar; $foo{BAR}=\@bar; for ( 1 .. 2){ my @arr = "ab$_" .. "ab4"; $foo{$_} = \@arr; } use Data::Dumper; print Dumper( \%foo ); __END__ $VAR1 = { '1' => [ 'ab1', 'ab2', 'ab3', 'ab4' ], 'bar' => [], 'BAR' => $VAR1->{'bar'}, '2' => [ 'ab2', 'ab3', 'ab4' ] };