Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re: A simple import() for those special moments

by MarkM (Curate)
on Jan 19, 2003 at 06:14 UTC ( #228134=note: print w/replies, xml ) Need Help??


in reply to A simple import() for those special moments

For some modules, I have come to the conlusion that nothing more than the following is necessary:

sub import { my $caller = caller; *{$caller . '::FUNCTION1'} = \&FUNCTION1; *{$caller . '::SCALAR1'} = \$SCALAR1; }

I usually end up with code such as the above for very specialized modules that need to load quickly, without any dependencies. Exporter.pm, even split into Exporter.pm and Exporter/Heavy.pm, is beastly long for the most common usages.

Some benefits of this approach include the ability to rename objects, and the ability to export lexical objects (in the above case, $SCALAR1 could be declared with my()).

I am not recommending my solution over yours. I am agreeing that rolling your own import() function can be very practical, and I believe that the practice suits the Perl mindset. Exporter.pm is one (convenient?) way to do it. It isn't the only way to do it.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://228134]
help
Chatterbox?
[choroba]: Slidy is basically HTML, so I'm not sure I really fly high :)
choroba should make his presentation scaffolding public
[Corion]: choroba: spod5 converts pod to S5 HTML, so it's also still basic. I find the lack of animations (in the sense of "highlight this", "highlight that" in code) somewhat tedious as I do it with rendered PNGs
[Corion]: I haven't found a good way to include/use the source SVGs I use for creating the PNGs directly as animations
[ambrus]: Presentations come in many different shapes, and so slides do as well.
[Corion]: Doing that in Powerpoint or Ooxml would be nice(r) but I'm much quicker doing the outline of a presentation and the code as Pod
[Corion]: Hurrr - on a machine that is behaving weirdly, I have two processes CROND running. I guess that is the source of unattended jobs sometimes not finding their files anymore...
[ambrus]: Most of the time if I make slides, they're just a formatted document with a medium level of formality (between a well written article and an informal draft), with usually the page breaks chosen carefully and possibly some content repeated between pages.

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (10)
As of 2017-09-26 10:04 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    During the recent solar eclipse, I:









    Results (293 votes). Check out past polls.

    Notices?