Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re^2: Adding code to a Perl program without stopping it

by spx2 (Chaplain)
on Apr 04, 2011 at 00:18 UTC ( #897261=note: print w/ replies, xml ) Need Help??


in reply to Re: Adding code to a Perl program without stopping it
in thread Adding code to a Perl program without stopping it

Module::Reload->check() basically does:

  • delete $INC{module_name};
  • require 'module_name' ;

but only if the modified_time of the package has changed on disk, which is very nice, Module::Reload works properly.

However, what if you delete a sub from a module while running the program, the function will remain loaded. That needs to be fixed in Module::Pluggable.

I took a look at Apache::StatINC and it does the same as Module::Reload except it does delete the subs that are gone using this:

  • $class->Apache::Symbol::undef_functions( undef, 1 );

However, I guess Apache::StatINC can be use only if you're writing a web app deployed using Apache. What if you want to write a non-web app(an IRC bot for example) ?

Plack::Loader::Shotgun I wasn't able to check out because I'm not familiar with Plack


Comment on Re^2: Adding code to a Perl program without stopping it

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://897261]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (13)
As of 2014-10-20 13:40 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (76 votes), past polls