compiling scripts ahead-of-time. Unfortunately, such static parallelization is hampered by the
dynamic behaviors pervasive in shell scripts—eg, variable expansion and command
substitution—which often requires reasoning about the current state of the shell and
filesystem.