Taint::Util wraps perl's internal routines for checking and setting the taint
flag and thus does not rely on regular expressions for untainting or odd tricks
involving eval and kill for checking whether data is tainted, instead it checks
and flips a flag on the scalar in-place.
Unlike the tie-based Data::Lazy, this module operates on values, not
variables. Therefore, assigning into $dv and $lv above will simply
replace the value, instead of triggering a STORE method call.
Also, thanks to the overload-based implementation, this module is
about 2x faster than Data::Lazy.
Create a list by taking one item from each array, and do that for all
possible ways that can be done, so that the first item in the list is
always from the first array, the second item from the second array, and
so on.
Sub::Exporter::Lexical provides an alternate installer for Sub::Exporter.
Installers are documented in Sub::Exporter's documentation; all you need to know
is that by using Sub::Exporter::Lexical's installer, you can import routines
into a lexical scope that will be cleaned up when that scope ends.
Sub::Override allows the programmer to simply name the sub to replace
and to supply a sub to replace it with.
my $override = Sub::Override->new('Some::sub', sub {'new data'});
# which is equivalent to:
my $override = Sub::Override->new;
$override->replace('Some::sub', sub { 'new data' });
One of the strongest complaints about Perl is its poor argument handling.
Simply passing everything in the @_ array is a serious limitation. This
module aims to rectify that.
With this module, we can specify subroutine signatures and automatically
dispatch on the number of arguments.
Test::Harness is limited to printing out its results. This makes analysis of
the test results difficult for anything but a human. To make it easier for
programs to work with test results, we provide Test::Harness::Straps. Instead
of printing the results, straps provide them as raw data. You can also
configure how the tests are to be run.
This module provides some drop-in replacements for the string comparison
functions of Test::More, but which are more suitable when you test against
long strings. If you've ever had to search for text in a multi-line string
like an HTML document, or find specific items in binary data,
this is the module for you.
Term::Visual is a "visual" terminal interface for curses applications. It
provides the split-screen interface you may have seen in console based IRC
and MUD clients.
Term::Visual uses the POE networking and multitasking framework to support
concurrent input from network sockets and the console, multiple timers, and
more.
nxt-python is a python driver/interface for the Lego Mindstorms NXT robot. The
1.x releases aim to improve on NXT_Python's interface and should be compatible
with scripts which use it while the 2.x releases improve on the API in
backwards-incompatible ways and will not work with NXT_Python scripts.