<?xml version="1.0" encoding="windows-1252"?>
<node id="1014881" title="Re: Module's name and file's name" created="2013-01-23 06:09:04" updated="2013-01-23 06:09:04">
<type id="11">
note</type>
<author id="163790">
dsheroh</author>
<data>
<field name="doctext">
So long as you remember to refer to things using the correct package name (&lt;c&gt;HR::myFunction&lt;/c&gt;) rather than the file name (&lt;c&gt;MyModule::myFunction&lt;/c&gt;), the only technical issue is that symbols exported by the package won't work automatically.  If it exports anything, you'll have to manually call &lt;c&gt;HR-&gt;import;&lt;/c&gt; after you &lt;c&gt;use MyModule;&lt;/c&gt; because the automatic call to &lt;c&gt;MyModule-&gt;import;&lt;/c&gt; won't do anything.
&lt;p&gt;
Even though it doesn't cause technical problems, it does tend to cause major usability and maintenance problems, so, as a general rule, it shouldn't be done except in very limited circumstances.  A package named &lt;c&gt;HR&lt;/c&gt; in a file named &lt;c&gt;MyModule.pm&lt;/c&gt; is &lt;i&gt;not&lt;/i&gt; one of those circumstances.</field>
<field name="root_node">
1014776</field>
<field name="parent_node">
1014776</field>
</data>
</node>
