Put evaluations in subshells to a) prevent clobbering of post order and b) protect parent variables.