my %newhash; @newhash{@array} = @oldhash{@array}; #### my %new = map { $_=> $old{$_} } grep { defined $old{$_} } @array; #### perl -e 'print "How sweet does a rose smell? "; chomp ($n = ); $rose = "smells sweet to degree $n"; *other_name = *rose; print "$other_name\n"'