in reply to Run a program and allow user to interactivly stop it.

Well, on a sufficiently Unix-inspired system you could start the program in the background using the system's syntax for that. You could also fork() and exec(), then continue processing in the parent process.

my $kid_pid = fork() or die "Cannot fork!\n"; exec( '/bin/ls' ) unless $kid_pid; my $keep_going = 1; while ( $keep_going ) { ... }

See the fork info in perlfunc for more information.