in reply to Yet Another Config File Parser Module

You should probably use Carp and croak instead of die (and carp instead of warn) within your package like that. That takes the error messages one step "out" and informs the user where in *their* script the error took place (assuming of course that the module is perfect and would never flaw).

In addition (and I guess this is more personal preference), a simple open(...) or die "..." is sufficient in my opinion, as opposed to testing if the file exists and is readable. The user will get error messages from the open call either way.