in reply to Formatting and write help

Curly brackets create a hash, initializes it with the contents of the curlies, and returns a reference to the hash. So

my @addr = {$one, $two};

means

my %anon_hash; $anon_hash{$one} = $two; my @addr = \%anon_hash;

Obviously, that's not what you want. To build a list, use parentheses.

my @addr = ($one, $two);