in reply to accessing subs/methods from the module

$f is not a method. It' an object. If you want to access it from Blah's new() method, pass it as an argument. But in your example, $f hasn't even been created yet when you invoke Blah->new() so what do you expect to do with it?

It is sometimes possible to access something in another package but it is usually bad form.

--- print map { my ($m)=1<<hex($_)&11?' ':''; $m.=substr('AHJPacehklnorstu',hex($_),1) } split //,'2fde0abe76c36c914586c';