# 1. with extra parens, works as expected (($a,$b) = (qw/a b/)) || die; print "a: $a b: $b\n "; # 2. without || or parens, works as expected ($a,$b) = (qw/a b/); print "a: $a b: $b\n "; # 3. without parens, but with ||, $a is set to 'b' # and $b is not set. Why? ($a,$b) = (qw/a b/) || die; print "a: $a b: $b\n ";