This is a question prompted by What modules are we actually using?. I was wondering if there is some core Perl module which has to be loaded, when it loads another module thru use or require? My idea would be to temporarily modify that module, to print to a log file.
What does that "it" refer to? Perl? If so, then I don't think so. Otherwise, unless I'm severely mistaken, I don't think so either.
However if all you want is to {know,log} which modules get loaded, then you can easily spot the possibility to put code into @INC to do so. E.g.:
#!/usr/bin/perl -l
use strict;
use warnings;
END {
my @stuff;
sub record {
push @stuff, $_[1];
undef;
}
print for @stuff;
}
use lib \&record;
use File::Find;
no lib \&record;
# Do something else, I suppose!
__END__
For the record this had come up in clpmisc and this kind of solution was suggested by Anno Siegel, who is a precious contributor there. As time permits I'll try to locate the original post.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|