Just wanted to quick chime in that the behavior of a spawned process outliving it's parent (and being reparented by the OS) is sometimes exactly what you want, so if the default behavior becomes "kill the child when the parent is terminated" it would be important to preserve an escape hatch for when you explicitly wanted the child process to outlive the parent and become an orphan.