in reply to array assignment with list operator , no parenthesis

It's because the precedence of comma is less than that of equals. ie, the statement is parsed as

( my @one = 7 ), 2, 3;

See Operator Precedence and Associativity for the gory details