There are many testing situations where you have a set of inputs and a set of expected outputs and you want to make sure your process turns each input chunk into the corresponding output chunk. Test::Chunks allows you do this with a minimal amount of...

This is a list of wishes for Perl. The most up to date version of this file is at <http://perl5.git.perl.org/perl.git/blob_plain/HEAD:/Porting/todo.pod> The tasks we think are smaller or easier are listed first. Anyone is welcome to work on any of th...

This lets you implement filesystems in perl, through the FUSE (Filesystem in USErspace) kernel/lib interface. FUSE expects you to implement callbacks for the various functions. In the following definitions, "errno" can be 0 (for a success), -EINVAL, ...

The Switch.pm module implements a generalized case mechanism that covers most (but not all) of the numerous possible combinations of switch and case values described above. The module augments the standard Perl syntax with two new control statements:...

The Inline module allows you to put source code from other programming languages directly "inline" in a Perl script or module. The code is automatically compiled as needed, and then loaded for immediate access from Perl. Inline saves you from the has...

IO::All combines all of the best Perl IO modules into a single nifty object oriented interface to greatly simplify your everyday Perl IO idioms. It exports a single function called "io", which returns a new IO::All object. And that object can do it a...

This module provides all the infrastructure you need to write Gimp-Perl plugins. Dov Grobgeld has written an excellent tutorial for Gimp-Perl. You can find it at "http://www.gimp.org/tutorials/Basic_Perl/". This distribution comes with many example s...

The RPC::XML package is an implementation of the XML-RPC standard. The package as a whole provides classes for data, for clients, for servers and for parsers (based on the XML::Parser and XML::LibXML packages from CPAN). This module provides a set of...

This section is surprisingly small because the rest of the FAQ is littered with answers involving regular expressions. For example, decoding a URL and checking whether something is a number can be handled with regular expressions, but those answers a...

IPC::Run allows you to run and interact with child processes using files, pipes, and pseudo-ttys. Both system()-style and scripted usages are supported and may be mixed. Likewise, functional and OO API styles are both supported and may be mixed. Vari...

This module converts Perl data structures to JSON and vice versa. Its primary goal is to be *correct* and its secondary goal is to be *fast*. To reach the latter goal it was written in C. Beginning with version 2.0 of the JSON module, when both JSON ...

Testing is usually the ugly part of Perl module authoring. Perl gives you a standard way to run tests with Test::Harness, and basic testing primitives with Test::More. After that you are pretty much on your own to develop a testing framework and phil...