But then I'd have to wait until the other script ends, before I can finally end this script. It would effectively keep both in memory at the same time. That doesn't look ideal.
You can do system("perl script2.pl arg1 arg2 &"), which will return immediately. And system("nohup perl scrip2.pl arg1 arg2 &") won't die when the parent process exits.