use warnings; use strict 'subs'; my %hash = qw (k1 v1 k2 v2 k3 v3); $hash{k1} = 42; # is fine @hash{k1,k2,k3} = (1,2,3); # BANG! Bareword "k1" not allowed... @hash{qw(k1 k2 k3)} = (1,2,3); # is fine