This module exports a single function: ttie
. It ties a variable to a type constraint, ensuring that whatever values stored in the variable will conform to the type constraint. If the type constraint has coercions, these will be used if necessary to ensure values assigned to the variable conform.
Ref::Util
introduces several functions to help identify references in a smarter (and usually faster) way. The difference with conventional approach:
No comparison against a string constant
Supports blessed variables
Supports tied variables and magic
Ignores overloading
Ignores subtle types
Usually faster
This pragma allows you to declare constants at compile-time. When a constant is used in an expression, Perl replaces it with its value at compile time, and may then optimize the expression further. In particular, any code in an if (CONSTANT)
block will be optimized away if the constant is false.
This package eases the writing of command line utilities, accepting commands and subcommands and so on. These commands can form a tree, which is mirrored in the package structure. On invocation, each command along the path through the tree (starting from the top-level command through to the most specific one) is instantiated.
The Inline::C
module allows you to write Perl subroutines in C. Since version 0.30 the Inline
module supports multiple programming languages and each language has its own support module. This document describes how to use Inline with the C programming language. It also goes a bit into Perl C internals.
The IPC::Run3 module allows you to run a subprocess and redirect stdin, stdout, and/or stderr to files and perl data structures. It aims to satisfy 99% of the need for using system, qx, and open3 with a simple, extremely Perlish API and none of the bloat and rarely used features of IPC::Run.
This package provides a Perl module for TrueType/OpenType font hacking. It supports reading, processing and writing of the following tables: GDEF, GPOS, GSUB, LTSH, OS/2, PCLT, bsln, cmap, cvt, fdsc, feat, fpgm, glyf, hdmx, head, hhea, hmtx, kern, loca, maxp, mort, name, post, prep, prop, vhea, vmtx and the reading and writing of all other table types.
This module acts as a layer between Exporter and modules which consume exports. It is feature-compatible with Exporter, plus some much needed extras. You can use this to import symbols from any exporter that follows Exporters specification. The exporter modules themselves do not need to use or inherit from the Exporter module, they just need to set @EXPORT and/or other variables.
This module allows using a variety of events without forcing module authors to pick a specific event loop, and without noticeable overhead. Currently supported event loops are EV, Event, Glib/Gtk2, Tk, Qt, Event::Lib
, Irssi, IO::Async
and POE (and thus also WxWidgets and Prima). It also comes with a very fast Pure Perl event loop that does not rely on XS.
This collection of modules enables writing Perl programs that perform asynchronous input/output (IO) operations. A typical program using them would consist of a single subclass of IO::Async::Loop
to act as a container of other objects, which perform the actual IO work required by the program. As well as IO handles, the loop also supports timers and signal handlers, and includes more higher-level functionality built on top of these basic parts.
XML::Twig
is an XML transformation module. Its strong points: can be used to process huge documents while still being in tree mode; not bound by DOM or SAX, so it is very perlish and offers a very comprehensive set of methods; simple to use; DWIMs as much as possible.
What it doesn't offer: full SAX support (it can export SAX, but only reads XML), full XPath support (unless you use XML::Twig::XPath
), nor DOM support.
Documentation at https://melpa.org/#/perlbrew
Role::Tiny is a minimalist role composition tool.
A pure Perl implementation of the RC4 algorithm.
Role::Tiny is a minimalist role composition tool.
File::Next is a Perl CPAN module for finding files.
Clipboard
provides functionality to copy and paste with any OS.
This package provides functions to work with directory and file names.
Sub::Quote provides an efficient generation of subroutines via string eval.
Test::File
provides a collection of test utilities for file attributes.
This module provides a few convenience methods for testing warning based code.