in reply to lying about program name

The OS can't lie to perl as to which script to execute because Perl wouldn't be able to find the right script to execute, and $0 contains the name of the script passed to perl, so $0 must necessarily contains the correct name of the script.