This is an experimental Perl module that allows you to use lists as the keys for multi-level hashes. Excellent for parse tree generation and other similar tasks where you need to create very deep trees or the tree depth is not known in advance. A real performance win on very deep trees over 'walking the tree' starting from the root node.
Class::ParmList is a general named parameter list parser. It handles default values, required vs allowed distinctions, optional name lexical checking, multiple retrieval, and error reporting. It also works well as a complement to Class::NamedParms.
Tie::DB_File::SplitHash is designed for support of file size limitted OSes. It transparently splits a DB_File database into as many distinct files as desired. It also distributes hash entries between the files using a randomization algorithm. It has the effect of allowing DB_File hashes to grow to the full size of the partition. Requires 'Digest::SHA1' and 'DB_File' to be installed.
Tie::FileLRUCache provides a persistent filesystem based LRU cache. It uses the 'last accessed' timestamp generated by the file system to determine the 'oldest' cache entry and discards the oldest cache entries when needed to stay under the -keep_last limit. If you store thing very fast (such that many entries receive the _same_ time stamp), it is essentially a coin toss which entry within a single timestamped second gets purged from the cache to make room for new ones.
Class:NamedParms provides key name checking for named accessor parameters. This allows the use of a generic 'get/set' type parameterized accessor while automatically catching accidental mis-spellings and usage of uninitialized parameters. This catches a large class of programming errors without requiring a new accessor for every object parameter.
Lingua::Stem takes lists of words an (as determined by the locale) stems them to their root form. This is primarily of use in search applications that need to be able to find conjugated forms of words as well as exact matches.
This is a useful Perl library when debugging Perl 5 scripts that make use of references & nested data structures. Simply pass PrintAnything a reference and it will print out a prettified text version of all the data in the structure, complete with fancy indenting and faithful representation of lists and hash key:value mappings.
This library includes many useful routines: ReadParse which gets all form parameters and writes them into a field variable, PrintHeader which prints the Content-type text/html, HtmlTop(title, background, kopf) that simply prints a head of a HTML document, HtmlBot(title) that prints the bottom of a HTML document, SplitParam that splits a list, CgiError which prints out error messages, Check_Name which checks if a username contains dangerous signs for filenames, Get_Seconds that returns the number of seconds, lock(filehandle) that implements a locking function, unlock(filehandle) that implements a unlocking function, and more.