in reply to Advice on Global Constants

Have you considered using restricted hashes? lock_keys and unlock_keys are found in Hash::Util.

From the pod:

5.8.0 introduces the ability to restrict a hash to a certain set of keys. No keys outside of this set can be added. It also introduces the ability to lock an individual key so it cannot be deleted and the value cannot be changed.