MFPM (My Favorite Perl Modules)

I guarantee that this post will only be interesting if you’re into coding or general hard-core geekery. I’ll spare everyone else the horror of taking up space on our home page with any other details. 🙂 These are Perl|http://perl.org/ modules that have become favorites of mine over the past several years of coding. I have picked them because of their aesthetic appeal to me. These are modules that I really love to use. I don’t necessarily use them frequently, but when I do, I simply have a joyful time with them. Sometimes this is because they are well-documented, or well-designed, or just plain useful. Just thinking about these modules brings on the mental equivalent of salivation. Is that wrong? Anyway, here they are.

LWP|http://search.cpan.org/~gaas/libwww-perl-5.803/ A mouth-wateringly delicious module that lets you do all sorts of cool stuff with Internet requests of various types. Fetch web pages, parse response codes, send custom POST forms, dissect every last bit of data… awesome.

WWW::Mechanize|http://search.cpan.org/~petdance/WWW-Mechanize-1.12/ Write Perl scripts that can perform automated web-browsing. You can actually simulate clicking on a URL, filling out a form, submitting, parsing the returned text, filling out another form, downloading a file, etc. Great stuff.

Data::Dumper|http://search.cpan.org/~ilyam/Data-Dumper-2.121/ A must-have. Simple, elegant way to easily print out the contents of any data structure.

CGI|http://search.cpan.org/~lds/CGI.pm-3.07/CGI.pm I know, this one’s a bit old in the tooth, rather bloated, and archaic. Many people have moved on to more sophisticated techniques like templating with HTML::Mason or what-have-you. I still love good o’l CGI for its never-ending bag of tricks, and its ability to break down an otherwide unruly HTML page into a nicely laid out set of function calls.

Storable|http://search.cpan.org/~ams/Storable-2.13/ Simple, easy-to-use module for storing your data structures. Syntax? store($structure,$file); and retrieve($file); Yep, it’s that easy.

DBI|http://search.cpan.org/~timb/DBI-1.48/ Superclass to perform database operations on any type of database driver. The functions work the same no matter what database you’re using, so you can write very portable DB code with a minimum of customization.

There are thousands of other modules out there, but I simply haven’t had the time or the reason to try them all out. Anybody else got a good module to recommend?

Leave a Reply