in reply to Diamond errors
I could push $ARGV onto an array using eof and compare the result to @ARGV after the loop.
You can't do that because perl removes $ARGV from @ARGV for each file it processes so after the loop @ARGV is empty.