$ perl -MO=Deparse,-p junk sub non_commutative () { use warnings; return(17); } use warnings; ($x = (10 * non_commutative)); ($y = (non_commutative * 10)); print("$x\n$y\n\n"); ($x = (10 + non_commutative)); ($y = (non_commutative + 10)); print("$x\n$y\n"); junk syntax OK