14.6. Tie Modules on CPAN

Before you get all inspired to write your own tie module, you should
check to see if someone's already done it. There are lots of tie
modules on CPAN, with more every day. (Well, every month, anyway.)
Table 14-1 lists some of them.

Table 14.1. Tie Modules on CPAN

Module

Description

GnuPG::Tie::Encrypt

Ties a filehandle interface to encryption with the GNU Privacy Guard.

IO::WrapTie

Wraps tied objects in an IO::Handle interface.

MLDBM

Transparently stores complex data values, not just flat strings, in a DBM file.

Net::NISplusTied

Ties hashes to NIS+ tables.

Tie::Cache::LRU

Implements a least-recently used cache.

Tie::Const

Provides constant scalars and hashes.

Tie::Counter

Enchants a scalar variable to increment upon each access.

Tie::CPHash

Implements a case-preserving but case-insensitive hash.

Tie::DB_FileLock

Provides locking access to Berkeley DB 1.x.

Tie::DBI

Ties hashes to DBI relational databases.

Tie::DB_Lock

Ties hashes to databases using shared and exclusive locks.

Tie::Dict

Ties a hash to an RPC dict server.

Tie::Dir

Ties a hash for reading directories.

Tie::DirHandle

Ties directory handles.

Tie::FileLRUCache

Implements a lightweight, filesystem-based, persistent LRU cache.

Tie::FlipFlop

Implements a tie that alternates between two values.

Tie::HashDefaults

Lets a hash have default values.

Tie::HashHistory

Tracks history of all changes to a hash.

Tie::IxHash

Provides ordered associative arrays for Perl.

Tie::LDAP

Implements an interface to an LDAP database.

Tie::Persistent

Provides persistent data structures via tie.

Tie::Pick

Randomly picks (and removes) an element from a set.

Tie::RDBM

Ties hashes to relational databases.

Tie::SecureHash

Supports namespace-based encapsulation.

Tie::STDERR

Sends output of your STDERR to another process such as a mailer.

Tie::Syslog

Ties a filehandle to automatically syslog its output.

Tie::TextDir

Ties a directory of files.

Tie::TransactHash

Edits a hash in transactions without changing the order during the transaction.