$ perl -MO=Deparse,-p junk use subs ('non_commutative'); 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