My guess for why the first two examples fail when the one with the use lib succeeds is that you must have another 'test.pm' somewhere in your library path. When you use lib it adds the directory to the beginning of the search path, so your test.pm is found before the other test.pm.

As far as why your module exports the function when you specify the empty list on your use line: In your module you don't have a package declaration, so all the code is read into the main package. To get the behavior you expect your module would have to look something like this:

package test; use base 'Exporter'; @EXPORT = qw/testroutine/; sub testroutine { 'This is a test'; } 1;

See Exporter for more about how you can control what subroutines your class exports.

-- David Irving

In reply to Re: Use, Exporter, I'm Dizzy. by dirving
in thread Use, Exporter, I'm Dizzy. by logie17

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.