in reply to Dynamic function dispatching...

Can't you call your functions/subs as methods?

That is, Logged::Foo->bar(...) instead of Logged::Foo::bar(...), this will make the warning go away since you are calling a method, and not a function. (which is what the warning is about)