If I append two shell commands with a `;`, for this to work as it does in the shell, the globbing needs to run after the `cd` command is finished. With the current buggy eager implementation (glob at parsing time), it tries to resolve `a*` before the `cd` command executes.

I'm vague on how `spawn` handles these things, but since it's a single backticks expression does that pose some challenges?

Or I could ask this another way: in the lazy vs eager discussion, I'm not quite on yours and @vtjnash's wavelength yet. I might need more examples of things that we want to work---and things we don't want to break---that might require some care in the implementation.