in reply to Re^2: Best Practice for Replacing Globals
in thread Best Practice for Replacing Globals

> I don't really know what you mean by replacing them with real lexicals

If a package var is used only inside a single file, you can use a lexical without tieing it.

> these values need to be used across the program as a whole.

Hmm, as I said I need to guess to understand your situation.

For instance one of your descriptions fits for constants. I can't see the need to change them in a modperl environment.

And you may be able to go the inverse way, keep those package vars and tie them to a class which adapts to the modperl runtime environment by accessing its values in a lexical hash.

Again plain guess work without you showing an SSCCE.

Cheers Rolf
(addicted to the 𐍀𐌴𐍂𐌻 Programming Language :)
Wikisyntax for the Monastery

  • Comment on Re^3: Best Practice for Replacing Globals

Replies are listed 'Best First'.
Re^4: Best Practice for Replacing Globals
by beaker121 (Novice) on May 06, 2023 at 21:37 UTC
    Thank you, in the end I have refactored all the globals out into CGI::application params and a user object. The static behaviour ones are now using the CGI::application config plug in.