Code looks fine to me. Classic blame the programmer mentality. Shame on you.
Who to blame is less important when you have an abandoned/orphaned child processes to take care of :/
No kink shaming, tho.
And I think it is the responsibility of the type system to at least catch if I'm passing too many arguments to a function.