Running this code with -w,
use strict or use diagnostics doesn't reveal anything
useful, except that when the variables are lexically
scoped with my that the shell escapes seem to have
different precedence, being interpreted as an array
(which doesn't exist) instead of a scalar.
Does anyone have any ideas why?