Pretend to be Larry Wall before he designed the module AR. Larry was pondering how to seamlessly integrate a module and its “client”.
Looks like Larry’s very first challenge was namespace sharing between the module and its client. A module, being a library, defines utility subrutines, to be called within client’s namespace.
This first challenge introduces us to Exporter.pm, “polluting”, packages, sybol tables ..