in reply to Re: Reducing Perl's memory footprint depending on run mode
in thread Reducing Perl's memory footprint depending on run mode
The following might work:
BEGIN { if (completely_boring()) { eval <<USE; use Module::A; use Module::B; use Module::Etc; USE } else { eval "use Module::C"; } die $@ if $@; }
Putting the use statements inside an eval postpones their evaluation till runtime. This only works if the code is in a string rathern than a block. I've also used this trick to set up END blocks conditionally.
I vaguely recall that there might be a CPAN module that would let you do this more cleanly, but don't quote me on that.
--DrWhy
"If God had meant for us to think for ourselves he would have given us brains. Oh, wait..."
|
|---|