my %control = map { $_ => 'false' } split ' ', 'play ctrl loop' %control = map { $_ => 'true' } split ' ', $4; #### my %control = map { $_ => 'false' } qw(play ctrl loop); $control{$_} = 'true' for split ' ', $4; #### my %control = map { $_ => 'false' } qw(play ctrl loop); %control = (%control, map { $_ => 'true' } split ' ', $4); #### my %control = map { $_ => 'true' } split ' ', $4; $control{$_} ||= 'false' for qw(play ctrl loop); #### my %control = map { $_ => 'true' } split ' ', $4; %control = ((map { $_ => 'false' } qw(play ctrl loop)), %control); #### my %control = ((map { $_ => 'false' } qw(play ctrl loop)), (map { $_ => 'true' } split ' ', $4));