I'll agree that maybe a library name shouldn't be hardcoded. I have seen
this in a person's initial program if only to get the name of the data
area to use which contains their library list. (Vendor supplied method).
A variable library name is ok. Let's say they retrieve the object
library, file library, etc from this data area. Now they need to
copy/reorg/create/etc a file and they want to ensure they get/create it
from/to the right library.
Most of the other time we rely upon the library list. As you've said
"most", but I say not "all" cases.
A sending email address like postmaster at myco dot com may be ok but the
rest we have is table driven. We don't use snddst to rely upon the system
distribution directory to be set right. Too much effort on operations
when we can merge our Lotus directory into a file on the i to be used for
email. And we tie them together with accounting code and something in
Lotus. We store employee number in accounting code.