One of the best things about Perl is the number of packages provided by the user community. Installing packages generally requires root access but that is not a viable solution in the HPC environment.
There is an easy solution. You can use perl-virtualenv to create a personal Perl environment that will persist for each time you log in. There is no risk of packages being updated under you for another user.
Here is an example session:
[netid@login2 ~]$ module list
Currently Loaded Modulefiles:
1) pbspro/13.0.2.153173 2) gcc/5.2.0
[netid@login2 ~]$ module load perl
[netid@login2 ~]$ perl-virtualenv my_project
perl: /cm/shared/uaapps/perl/5.22.1/bin/perl
venv: /home/u13/netid/my_project
[netid@login2 ~]$ source my_project/bin/activate
Attempting to create directory /home/u13/chrisreidy/my_project
(my_project)[netid@login2 ~]$ cpanm -i Config::Trivial
--> Working on Config::Trivial
Fetching http://www.cpan.org/authors/id/A/AT/ATRICKETT/Config-Trivial-0.81.tar.gz ... OK
Configuring Config-Trivial-0.81 ... OK
==> Found dependencies: Pod::Coverage, Test::Pod::Coverage, IO::Capture
--> Working on Pod::Coverage
Fetching http://www.cpan.org/authors/id/R/RC/RCLAMP/Pod-Coverage-0.23.tar.gz ... OK
Configuring Pod-Coverage-0.23 ... OK
Building and testing Pod-Coverage-0.23 ... OK
Successfully installed Pod-Coverage-0.23
--> Working on Test::Pod::Coverage
Fetching http://www.cpan.org/authors/id/N/NE/NEILB/Test-Pod-Coverage-1.10.tar.gz ... OK
Configuring Test-Pod-Coverage-1.10 ... OK
Building and testing Test-Pod-Coverage-1.10 ... OK
Successfully installed Test-Pod-Coverage-1.10
--> Working on IO::Capture
Fetching http://www.cpan.org/authors/id/R/RE/REYNOLDS/IO-Capture-0.05.tar.gz ... OK
Configuring IO-Capture-0.04 ... OK
Building and testing IO-Capture-0.05 ... OK
Successfully installed IO-Capture-0.05
Building and testing Config-Trivial-0.81 ... OK
Successfully installed Config-Trivial-0.81
4 distributions installed