[TUHS] Happy birthday, Dennis Ritchie! [ really sun vs dec/apollo --> X and NeWS ]

Norman Wilson norman at oclsc.org
Tue Sep 19 22:24:25 AEST 2017


  Just out of curiosity, where does perror(filename), quite possibly the
  *most* common error message on Unix as a whole, fall on your scale? It
  says which of the file location or permissions (or whatever else) it is,
  but not whether it was attempting to open it for reading or writing.


I never liked perror much.  It's a little too primitive:
you get exactly one non-formatted string; you get only
stderr, so if you're sending messages separately to a log
or writing them to a network connection or the like, you're
out of luck.

strerror(errno) hits the sweet spot for me.  Until it
appeared in the standard library (and until said standard
spread enough that one could reasonably expect to find it
anywhere) I kept writing more or less that function into
program after program.

I guess the problem with perror is that it isn't sufficiently
UNIX-like: it bundles three jobs that are really separate
(convert errno to string message, format an error message,
output the message) into one function, inseparably and

Norman Wilson
Toronto ON

More information about the TUHS mailing list