For example, the 'standard' module CGI.pm has the following declaration at its top:  package CGI;  This module, and its functionality, would commonly be invoked as follows:  use CGI (':standard'); # imports many functions, including b() print b('Hello, world'); # outputs Hello, world  A 'missing' subroutine "could" be added from the using program's namespace.  sub CGI::bi { # define target namespace (CGI) and sub name (bi)  and invoked as below:  print CGI::bi('Hello, world'); # outputs Hello, world  However, though technically feasible, that would be dubious programming practice. You might just as well define the sub in the calling namespace, and call it from that namespace.