Surely you don't want to reset
everything, as that would also reset things like
@INC, making your program a little brain-dead. I mean, that's one of the reasons that
perldoc -f reset includes the paragraph:
Resetting "A-Z" is not recommended because you'll wipe out
+ your
@ARGV and @INC arrays and your %ENV hash. Resets only pack
+age
variables--lexical variables are unaffected, but they clea
+n
themselves up on scope exit anyway, so you'll probably wan
+t to
use them instead. See "my".
The proper way to go about this is to use proper objects in your program, so that you can have a top level object that is associated with a particular session, and everything else hangs off of that. Then, to reset the session, just generate a new session object.
-- Randal L. Schwartz, Perl hacker
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.