The tmp/tasks_binary is recompiled before every task, as far as I can tell. It is often not necessary. If the source has not been modified since the binary was generated, there should not be a recompile. To determine this, parse the require statements in the source files, and nothing else, and stat the files for their modification dates. There are macro methods of receiving external input that could make the source stale, but they are rare and not worth checking.