in reply to Re: Reloading Modules
in thread Reloading Modules

You don't want to use eval(BLOCK) though. The block is compiled at the surrounding's compile-time. You want eval(EXPR).

Compare this:
#!/usr/bin/perl -l print 'pre'; eval { BEGIN { print 'compiling eval block' } }; print 'post';
with this:
#!/usr/bin/perl -l print 'pre'; eval q{ BEGIN { print 'compiling eval expr' } }; print 'post';