I am working on a bunch of sequential processes (i.e. the output of one process is needed by the next one). Initially I had thought of writing a wrapper script what would call a bunch of scripts (one script per process). This rather modular approach would pass the command line arguments from the wrapper script to scripts called by the wrapper. However, I am now not sure a wrapper would be a good idea for this as opposed to a single script with each subprocess being a subroutine instead of a separate script. I am sure both approaches would work, but which one is more efficient and elegant if such a distinction can be made?