Perl modules

Perl modules, what are they and why do I care?

What is a Perl module?

Perl modules are a set of related functions in a library file. They are specifically designed to be reusable by other modules or programs. There are 108,000 modules ready for you to use on the Comprehensive Perl Archive Network.

You should be aware that most Perl modules are written in Perl but some use XS (they are written in C) so require a C compiler (if you followed the installing instructions you already have one). Modules may have dependencies on other modules (almost always on CPAN) and cannot be installed without them (or without a specific version of them). Many modules on CPAN now require a recent version of Perl (version 5.8 or above).

Where can I find modules?

https://metacpan.org/ lets you search the 108,000 modules on CPAN.

Which modules should I use?

MetaCPAN has user ratings, also have a look at Task::Kensho. The examples section and FAQ also have some recommendations, you could also ask the Perl community.

How do I install a module?

If you haven't already installed cpanm, do that first:

cpan App::cpanminus

Then to install any module from CPAN

cpanm Module::Name