use Data::Dumper; use strict; my @array; my %array; @array = qw( a b c d ) ; @array{ @array } = ( [ @array ] ) x @array ; print Data::Dumper->Dump([\%array], ["*array"]); __OUTPUT__ %array = ( 'c' => [ 'a', 'b', 'c', 'd' ], 'a' => $array{'c'}, 'b' => $array{'c'}, 'd' => $array{'c'} ); #### perl -v This is perl, v5.8.0 built for MSWin32-x86-multi-thread (with 1 registered patch, see perl -V for more detail) Copyright 1987-2002, Larry Wall Binary build 806 provided by ActiveState Corp. http://www.ActiveState.com Built 00:45:44 Mar 31 2003 ---snip---