c:\@Work\Perl\monks>perl -wMstrict -MData::Dump -le "my $line = 'foo'; my @data = qw(hi ha ho); my @site = (9, 8, 7); my %lengths; ;; $lengths{$line} = { x => $site[0], y => $site[1], z => \@data }; dd \%lengths; ;; for my $coord (keys %lengths) { for (@{$lengths{$coord}{z}}) { print $_; } } " { foo => { x => 9, y => 8, z => ["hi", "ha", "ho"] } } hi ha ho