Is that what actually happens - that Perl does a "test-run" of the sub-routines in addition to checking for syntax and reference errors ?

There is no "test-run" when a module is use-ed. Basically, Perl does what you use the module to tell it to do, but it does it at compile time. Usually you just tell Perl to define subroutines using sub, a fairly quiet process, or maybe define some global or lexical variables, likewise quiet. However, you can do other things, like building complex data structures — which, according to your other posts, you seem to be doing! You could call a built-in function like
    print 'string';
and  string would be printed at compile time, as pointed out in other posts. You can call any (defined) function and it will execute.

See "BEGIN, UNITCHECK, CHECK, INIT and END" in perlmod for more info on controlling when things get executed WRT compile versus run time.


In reply to Re^3: sub running on use statement by AnomalousMonk
in thread sub running on use statement by Anonymous Monk

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.