in reply to Passing arguments

How did you deduce your program doesn't receive any arguments? Are you sure -p is actually passed to your Perl script, and not parsed by perl due to the way you start your script?