in reply to Intelligent Package Interaction

I do things via a common package with accessor functions. Something like this.
use NYSCUL::ConfAssist qw(getDbConn loadConfig); loadConfig("myconf.xml"); foo(); sub foo { my($db)=getDbConn("mydb"); . . . }
It works fairly well for me. "getDbConn" consults the programs config info to get all the info it needs and off I go.