Excerpted from the README file:
Term::Size is a Perl module which provides a straightforward way to get
the size of the terminal (or window) on which a script is running.
Portable API to set the terminal titlebar
This module dumps strings of characters (or bytes) for printing and debugging.
String::Errf provides errf, a simple string formatter that works
something like sprintf.
The subname() function exported by this module allows one to assign new
names to Perl subroutine. This is different from glob-assignment, since
the name is only used for informational purposes (caller, Carp, etc.).
Note that for anonymous closures (subs that reference lexicals declared
outside the sub itself) one can name each instance of the closure
differently, which can be very useful for debugging.
The VT102 class provides emulation of most of the functions of a DEC
VT102 terminal. Once initialised, data passed to a VT102 object is
processed and the in-memory "screen" modified accordingly. This
"screen" can be interrogated by the external program in a variety of
ways.
This allows your program to interface with full-screen console
programs by running them in a subprocess and passing their output to a
VT102 class. You can then see what the application has written on the
screen by querying the class appropriately.
GNU Pth - The GNU Portable Threads
Copyright (c) 1999-2005 Ralf S. Engelschall <rse@gnu.org>
Pth is a very portable POSIX/ANSI-C based library for Unix platforms
which provides non-preemptive priority-based scheduling for multiple
threads of execution (aka ``multithreading'') inside event-driven
applications. All threads run in the same address space of the server
application, but each thread has it's own individual program-counter,
run-time stack, signal mask and errno variable.
The thread scheduling itself is done in a cooperative way, i.e., the
threads are managed by a priority- and event-based non-preemptive
scheduler. The intention is that this way one can achieve better
portability and run-time performance than with preemptive scheduling.
The event facility allows threads to wait until various types of events
occur, including pending I/O on file descriptors, asynchronous signals,
elapsed timers, pending I/O on message ports, thread and process
termination, and even customized callback functions.
This simple test module checks the subroutines provided by a module. This is
useful for confirming a planned API in testing and ensuring that other
functions aren't unintentionally included via import.
String::Formatter is a tool for building sprintf-like formatting
routines. It supports named or positional formatting, custom
conversions, fixed string interpolation, and simple width-matching out
of the box.