Type::Tiny::XS provides an XS boost for some of Type::Tiny's built-in type
constraints. Type::Tiny::XS is not required for Type::Tiny, but provides a speed
boost for some type checks if available.
UUID::Random generates random uuid strings. It does not satisfy any of the
points listed in RFC 4122 but the default format.
If you need RFC compliant UUID strings have a look at Data::UUID.
`VCS' is an API for abstracting access to all version control systems
from Perl code. This is achieved in a similar fashion to the `DBI'
suite of modules. It comes with example CVS and RCS wrappers.
TheSchwartz is a reliable job queue system. Your application can put
jobs into the system, and your worker processes can pull jobs from the
queue atomically to perform. Failed jobs can be left in the queue to
retry later.
Thread::Apartment provides an apartment threading wrapper
for Perl classes. "Apartment threading" is a method for
isolating an object (or object hierarchy) in its own thread,
and providing external interfaces via lightweight client
proxy objects. This approach is especially valuable in the
Perl threads environment, which doesn't provide a direct
means of passing complex, nested structure objects between
threads, and for non-threadsafe legacy object architectures,
e.g., Perl/Tk.
By using lightweight client proxy objects that implement the
Thread::Queue::Queueable interface, with Thread::Queue::Duplex
objects as the communication channel between client proxies
and apartment threads (or between threads in general), a more
thread-friendly OO environment is provided, ala Java, i.e.,
the ability to pass arbitrary objects between arbitrary threads.
Thread::Apartment is a fundamental component of the PSiCHE
framework (http://www.presicient.com/psiche).
Throwable is a role for classes that are meant to be thrown as exceptions
to standard program flow. It is very simple and does only two things: saves
any previous value for $@ and calls die $self.
Tie::FileLRUCache
Provides a lightweight Least Recently Used cache of data via
either an object or tied interface. Keys and data are both
allowed to be references and objects as well as scalars. Requires
'Digest::SHA1' to be installed.
This is a perl module for dealing with time intervals. Among other
things, this module can tell you the number of hours, minutes, and
seconds elapsed between two dates.
The "forks" pragma allows a developer to use threads without having to
have a threaded perl, or to even run 5.8.0 or higher. There were a number
of goals that I am trying to reach with this implementation.
The standard Perl 5.8.0 threads implementation is very memory consuming,
which makes it basically impossible to use in a production environment,
particularly with mod_perl and Apache. Because of the use of the standard
Unix fork() capabilities, most operating systems will be able to use the
Copy-On-Write (COW) memory sharing capabilities (whereas with the standard
Perl 5.8.0 threads implementation, this is thwarted by the Perl interpreter
cloning process that is used to create threads). The memory savings have
been confirmed.
You should be able to run threaded applications unchanged by simply making
sure that the "forks" and "forks::shared" modules are loaded,
e.g. by specifying them on the command line.
strictures turns on indirect checking only when it thinks it's running
in a compilation (or pod coverage) test - though if this causes undesired
behaviour this can be overriden by setting the PERL_STRICTURES_EXTRA
environment variable.