The problem I am having is that, garbage is not executable and so the open should fail and die should execute. This doesn't happen. Then of course the print fails as would the close. Shouldn't open fail if it can't pipe to $pager? What can I do if I am just wrong here and open will not fail? In what instance would the open fail for this code?