Oh, I like this idiom, but strictly in stand-alone scripts. Bombing out of a program deep inside some library doesn't sit well with me.
And Perl exits with the following error message if the file doesn't exist using this idiom:
Can't open /does/not/exist: No such file or directory.
Uhm. I can do that :-)
Yes, it doesn't seem hard at all does it? (:
It includes a description of what was being attempted ("open", though I'd probably opt for metioning that "read" access is what was required -- though I can understand not wanting to confuse people into thinking it was a read operation that failed while keeping the message short), the input data to the operation (the name of the file), and the correct error code indicating why it failed ($! in this case).
Unfortunately, that still makes it above average in my experience. ):
- tye (who doesn't like error messages a la mode)