summaryrefslogtreecommitdiff
path: root/doc/devel/memo
diff options
context:
space:
mode:
Diffstat (limited to 'doc/devel/memo')
-rw-r--r--doc/devel/memo/00modlist.long.txt3481
-rw-r--r--doc/devel/memo/01_good_modules1401
-rw-r--r--doc/devel/memo/99modlist.txt3481
-rw-r--r--doc/devel/memo/TODO2
4 files changed, 8365 insertions, 0 deletions
diff --git a/doc/devel/memo/00modlist.long.txt b/doc/devel/memo/00modlist.long.txt
new file mode 100644
index 00000000..6ea23334
--- /dev/null
+++ b/doc/devel/memo/00modlist.long.txt
@@ -0,0 +1,3481 @@
+The Perl 5 Module List
+
+Maintained by Tim Bunce and Andreas König <modules@perl.org>;
+$Revision$ $Date$ -*- coding:utf-8 -*-
+
+Contents
+
+Introduction
+Where Are The Modules Kept?
+Playing Your Part
+How To Get a More Recent Copy of the List
+Editorial Information and Copyright
+
+Part 1 - Modules: Creation, Use and Abuse
+
+1) Perl 5 Module Terminology
+2) Guidelines for Module Creation
+3) Guidelines for Converting Perl 4 Library Scripts into Modules
+4) Guidelines for Reusing Application Code
+5) Namespace Coordination
+
+Part 2 - The Perl 5 Module List
+
+1) Module Listing Format
+2) Perl Core Modules, Perl Language Extensions and Documentation Tools
+3) Development Support
+4) Operating System Interfaces, Hardware Drivers
+5) Networking, Device Control (modems) and InterProcess Communication
+6) Data Types and Data Type Utilities
+7) Database Interfaces
+8) User Interfaces
+9) Interfaces to or Emulations of Other Programming Languages
+10) File Names, File Systems and File Locking (see also File Handles)
+11) String Processing, Language Text Processing, Parsing and Searching
+12) Option, Argument, Parameter and Configuration File Processing
+13) Internationalization and Locale
+14) Authentication, Security and Encryption
+15) World Wide Web, HTML, HTTP, CGI, MIME
+16) Server and Daemon Utilities
+17) Archiving, Compression and Conversion
+18) Images, Pixmap and Bitmap Manipulation, Drawing and Graphing
+19) Mail and Usenet News
+20) Control Flow Utilities (callbacks and exceptions etc)
+21) File Handle, Directory Handle and Input/Output Stream Utilities
+22) Microsoft Windows Modules
+23) Miscellaneous Modules
+24) Interface Modules to Commercial Software
+
+Part 3 - Big Projects Registry
+
+1) Items in the Todo File
+2) Multi-threading
+3) Object Management Group CORBA & IDL
+4) Expand Tied Array Interface
+5) Extend Yacc To Write XS Code
+6) Approximate Matching Regular Expressions
+
+Part 4 - Standards Cross-reference
+
+4.1) IETF - Internet Engineering Task Force (RFCs)
+4.2) ITU - International Telegraph Union (X.*)
+4.3) ISO - International Standards Organization (ISO*)
+
+Part 5 - Who's Who and What's Where
+
+5.1) Information / Contact Reference Details
+5.2) Perl Frequently Asked Questions (FAQ) Files
+
+ ------------------------------------------------------------------------
+
+Introduction
+
+This document is a semi-formal list of Perl 5 Modules. The Perl 4 concept of
+packages has been extended in Perl 5 and a new standardised form of reusable
+software component has been defined: the Module.
+
+Perl 5 Modules typically conform to certain guidelines which make them
+easier to use, reuse, integrate and extend.
+
+This list has two key aims:
+
+ * FOR DEVELOPERS: To change duplication of effort into cooperation.
+ * FOR USERS: To quickly locate existing software which can be reused.
+
+This list includes the Perl 5 standard modules, other completed modules,
+work-in-progress modules and would-be-nice-to-have ideas for modules. It
+also includes guidelines for those wishing to create new modules including
+how to name them.
+
+Where Are The Modules Kept?
+
+Most, but not all, of the modules can be found within CPAN, the
+Comprehensive Perl Archive Network of mirrored FTP sites. Within the CPAN
+scheme the modules described in this list can be found in the modules/
+directory below the CPAN root directory. CPAN is a worlswide network of
+mirrors and you can find your closest mirror in the file
+http://www.cpan.org/SITES.html
+
+NOTE: If you can't find what you want, or wish to check that what you've
+found is the latest version, or wonder why a module mentioned in this list
+is not on CPAN, you should contact the person associated with the module
+(and not the maintainers of the archives or this list). Contact details are
+given at the start of Part 5.
+
+Playing Your Part
+
+Perl is a huge collaborative effort. Everyone who uses perl is benefiting
+from the contributions of many hundreds, maybe thousands, of people. How
+much time has perl saved you since you started using it?
+
+Do you have any modules you could share with others? For example, you may
+have some perl4 scripts from which generally useful, and reusable, modules
+could be extracted. There may be many people who would find your work very
+useful. Please play your part and contribute to the Perl community where you
+can. [ end of sermon :-]
+
+Help save the world! Please submit new entries and updates to us so we can
+keep this list up-to-date. Send the new or corrected entry by email to
+modules@perl.org . Please do not send code to this address. Instead upload
+your module, once registered, to the PAUSE site for forwarding on to CPAN.
+See section 2, especially 2.6 and 2.11.
+
+How To Get a More Recent Copy of the List
+
+This Module List is fed into CPAN on a semi-regular basis. Its relative path
+within a CPAN mirror is in modules/00modlist.long.html .
+
+Editorial Information and Copyright
+
+This document is Copyright (c) 1997-2000 by Tim Bunce and Andreas König.
+All rights reserved. Permission to distribute this document, in full or
+part, via electronic means (emailed, posted or archived) or printed copy is
+granted providing that no charges are involved, reasonable attempt is made
+to use the most current version, and all credits and copyright notices are
+retained. Requests for other distribution rights, including incorporation in
+commercial products, such as books, magazine articles, or CD-ROMs should be
+made to Tim.Bunce@ig.co.uk and Andreas.Koenig@mind.de .
+
+Disclaimer: The content of this document is simply a collection of
+information gathered from many sources with little or no checking. There are
+NO warranties with regard to this information or its use.
+
+A little background information... I (Tim) created the Module List in August
+1994 and maintained it manually till April 1996. By that time Andreas had
+implemented the Perl Authors Upload Server (PAUSE) and it was happily
+feeding modules through to the CPAN archive sites (see
+http://www.cpan.org/modules/04pause.html for details). Since PAUSE held a
+database of module information which could be maintained by module authors
+it made sense for the module listing part of the Module List to be built
+from that database. In April 1996 Andreas took over the automatic posting of
+the Module List and I now maintain the other parts of the text. We plan to
+add value to the automation over time.
+
+Part 1 - Modules: Creation, Use and Abuse
+
+1) Perl 5 Module Terminology
+
+Perl 5 implements a class using a package, but the presence of a package
+doesn't imply the presence of a class. A package is just a namespace. A
+class is a package that provides subroutines that can be used as methods. A
+method is just a subroutine that expects, as its first argument, either the
+name of a package (for "static" methods), or a reference to something (for
+"virtual" methods).
+
+A module is a file that (by convention) provides a class of the same name
+(sans the .pm), plus an import method in that class that can be called to
+fetch exported symbols. This module may implement some of its methods by
+loading dynamic C or C++ objects, but that should be totally transparent to
+the user of the module. Likewise, the module might set up an AUTOLOAD
+function to slurp in subroutine definitions on demand, but this is also
+transparent. Only the .pm file is required to exist.
+
+2) Guidelines for Module Creation
+
+2.1 Do similar modules already exist in some form?
+
+If so, please try to reuse the existing modules either in whole or by
+inheriting useful features into a new class. If this is not practical try to
+get together with the module authors to work on extending or enhancing the
+functionality of the existing modules. A perfect example is the plethora of
+packages in perl4 for dealing with command line options.
+
+If you are writing a module to expand an already existing set of modules,
+please coordinate with the author of the package. It helps if you follow the
+same naming scheme and module interaction scheme as the original author.
+
+2.2 Try to design the new module to be easy to extend and reuse.
+
+Use blessed references. Use the two argument form of bless to bless into the
+class name given as the first parameter of the constructor, e.g.:
+
+ sub new { my $class = shift; return bless {}, $class; }
+
+or even this if you'd like it to be used as either a static or a virtual
+method.
+
+ sub new { my $self = shift; my $class = ref($self) || $self;
+ return bless {}, $class; }
+
+Pass arrays as references so more parameters can be added later (it's also
+faster). Convert functions into methods where appropriate. Split large
+methods into smaller more flexible ones. Inherit methods from other modules
+if appropriate.
+
+Avoid class name tests like: die "Invalid" unless ref $ref eq 'FOO'.
+Generally you can delete the "eq 'FOO'" part with no harm at all. Let the
+objects look after themselves! If it's vital then you can use the UNIVERSAL
+methods isa and can. Generally, avoid hardwired class names as far as
+possible.
+
+Avoid $r->Class::func() where using @ISA=qw(... Class ...) and $r->func()
+would work (see perlbot man page for more details).
+
+Use autosplit or the SelfLoader module so little used or newly added
+functions won't be a burden to programs which don't use them. Add test
+functions to the module after __END__ either using autosplit or by saying:
+
+ eval join('',<main::DATA>) || die $@ unless caller();
+
+Does your module pass the 'empty sub-class' test? If you say "@SUBCLASS::ISA
+= qw(YOURCLASS);" your applications should be able to use SUBCLASS in
+exactly the same way as YOURCLASS. For example, does your application still
+work if you change: $obj = new YOURCLASS; into: $obj = new SUBCLASS; ?
+
+Avoid keeping any state information in your packages. It makes it difficult
+for multiple other packages to use yours. Keep state information in objects.
+
+Always use -w. Try to "use strict;" (or "use strict qw(...);"). Remember
+that you can add "no strict qw(...);" to individual blocks of code which
+need less strictness. Always use -w. Always use -w! Follow the guidelines in
+the perlstyle(1) manual.
+
+2.3 Some simple style guidelines
+
+The perlstyle manual supplied with perl has many helpful points.
+
+Coding style is a matter of personal taste. Many people evolve their style
+over several years as they learn what helps them write and maintain good
+code. Here's one set of assorted suggestions that seem to be widely used by
+experienced developers:
+
+Use underscores to separate words. It is generally easier to read
+$var_names_like_this than $VarNamesLikeThis, especially for non-native
+speakers of English. It's also a simple rule that works consistently with
+VAR_NAMES_LIKE_THIS.
+
+Package/Module names are an exception to this rule. Perl informally reserves
+lowercase module names for 'pragma' modules like integer and strict. Other
+modules normally begin with a capital letter and use mixed case with no
+underscores (need to be short and portable).
+
+You may find it helpful to use letter case to indicate the scope or nature
+of a variable. For example:
+
+ $ALL_CAPS_HERE constants only (beware clashes with perl vars)
+ $Some_Caps_Here package-wide global/static $no_caps_here function
+ scope my() or local() variables
+
+Function and method names seem to work best as all lowercase. E.g.,
+$obj->as_string().
+
+You can use a leading underscore to indicate that a variable or function
+should not be used outside the package that defined it.
+
+For method calls use either
+
+ $foo = new Foo $arg1, $arg2; # no parentheses $foo =
+ Foo->new($arg1, $arg2);
+
+but avoid the ambiguous form
+
+ $foo = new Foo($arg1, $arg2); # Foo() looks like function call
+
+It can be very helpful if the names of the classes that your module uses can
+be specified as parameters. Consider:
+
+ $dog_class = $args{dog_class} || 'Dog'; $spot =
+ $dog_class->new(...);
+
+This allows the user of your module to specify an alternative class
+(typically a subclass of the one you would normally have used).
+
+On how to report constructor failure, Larry said:
+
+I tend to see it as exceptional enough that I'll throw a real Perl exception
+(die) if I can't construct an object. This has a couple of advantages right
+off the bat. First, you don't have to check the return value of every
+constructor. Just say "$fido = new Doggie;" and presume it succeeded. This
+leads to clearer code in most cases.
+
+Second, if it does fail, you get a better diagnostic than just the
+undefinedness of the return value. In fact, the exception it throws may be
+quite rich in "stacked" error messages, if it's rethrowing an exception
+caught further in.
+
+And you can always catch the exception if it does happen using eval {}.
+
+If, on the other hand, you expect your constructor to fail a goodly part of
+the time, then you shouldn't use exceptions, but you should document the
+interface so that people will know to check the return value. You don't need
+to use defined(), since a constructor would only return a true reference or
+a false undef. So good Perl style for checking a return value would simply
+say
+
+ $conn = new Connection $addr or die "Couldn't create Connection";
+
+In general, make as many things meaningful in a Boolean context as you can.
+This leads to straightforward code. Never write anything like
+
+ if (do_your_thing() == OK)
+
+in Perl. That's just asking for logic errors and domain errors. Just write
+
+ if (do_your_thing())
+
+Perl is designed to help you eschew obfuscation, if that's your thing.
+
+2.4 Select what to export.
+
+Do NOT export method names! Do NOT export anything else by default without a
+good reason!
+
+Exports pollute the namespace of the module user. If you must export try to
+use @EXPORT_OK in preference to @EXPORT and avoid short or common names to
+reduce the risk of name clashes.
+
+Generally anything not exported is still accessible from outside the module
+using the ModuleName::item_name (or $blessed_ref->method) syntax. By
+convention you can use a leading underscore on names to informally indicate
+that they are 'internal' and not for public use.
+
+(It is actually possible to get private functions by saying: my $subref =
+sub { ... }; &$subref; But there's no way to call that directly as a method,
+since a method must have a name in the symbol table.)
+
+As a general rule, if the module is trying to be object oriented then export
+nothing. If it's just a collection of functions then @EXPORT_OK anything but
+use @EXPORT with caution.
+
+2.5 Select a name for the module.
+
+This name should be as descriptive, accurate and complete as possible. Avoid
+any risk of ambiguity. Always try to use two or more whole words. Generally
+the name should reflect what is special about what the module does rather
+than how it does it.
+
+Having 57 modules all called Sort will not make life easy for anyone (though
+having 23 called Sort::Quick is only marginally better :-). Imagine someone
+trying to install your module alongside many others. If in any doubt ask for
+suggestions in comp.lang.perl.modules or modules@perl.org .
+
+Please use a nested module name to informally group or categorise a module,
+e.g., placing a sorting module into a Sort:: category. A module should have
+a very good reason not to have a nested name. Please avoid using more than
+one level of nesting for module names (packages or classes within modules
+can, of course, use any number).
+
+Module names should begin with a capital letter. Lowercase names are
+reserved for special modules such as pragmas (e.g., lib and strict).
+
+Note that module names are not related to class hierarchies. A module name
+Foo::Bar does not in any way imply that Foo::Bar inherits from Foo. Nested
+names are simply used to provide some useful categorisation for humans. The
+same is generally true for all package names.
+
+Since the CPAN is huge and growing daily, it's essential that module authors
+choose names which lend themselves to browsing. That means minimizing
+acronyms, cute names, and jargon. Also, don't make up a new top level
+category unless you have a good reason; please choose an already-existing
+category when possible. Send mail to modules@perl.org before you upload, so
+we can help you select a name.
+
+If you insist on a name that we consider inappropriate, we won't prevent you
+from uploading your module -- but it'll remain in your "author" directory
+and won't be directly visible from CPAN/modules/by-module.
+
+We appreciate the efforts of the contributors who have helped make the CPAN
+the world's largest reusable code repository. Please help us enhance it by
+working with us to choose the best name possible.
+
+If you are developing a suite of related modules/classes it's good practice
+to use nested classes with a common prefix as this will avoid namespace
+clashes. For example: Xyz::Control, Xyz::View, Xyz::Model etc. Use the
+modules in this list as a naming guide.
+
+If adding a new module to a set, follow the original author's standards for
+naming modules and the interface to methods in those modules.
+
+If developing modules for private internal or project specific use, that
+will never be released to the public, then you should ensure that their
+names will not clash with any future public module. You can do this either
+by using the reserved Local::* category or by using an underscore in the top
+level name like Foo_Corp::*.
+
+To be portable each component of a module name should be limited to 11
+characters. If it might be used on DOS then try to ensure each is unique in
+the first 8 characters. Nested modules make this easier.
+
+2.6 Have you got it right?
+
+How do you know that you've made the right decisions? Have you picked an
+interface design that will cause problems later? Have you picked the most
+appropriate name? Do you have any questions?
+
+The best way to know for sure, and pick up many helpful suggestions, is to
+ask someone who knows. The comp.lang.perl.modules Usenet newsgroup is read
+by just about all the people who develop modules and it's generally the best
+place to ask first. If you need more help then try modules@perl.org .
+
+All you need to do is post a short summary of the module, its purpose and
+interfaces. A few lines on each of the main methods is probably enough. (If
+you post the whole module it might be ignored by busy people - generally the
+very people you want to read it!)
+
+Don't worry about posting if you can't say when the module will be ready -
+just say so in the message. It might be worth inviting others to help you,
+they may be able to complete it for you!
+
+2.7 README and other Additional Files.
+
+It's well known that software developers usually fully document the software
+they write. If, however, the world is in urgent need of your software and
+there is not enough time to write the full documentation please at least
+provide a README file containing:
+
+ * A description of the module/package/extension etc.
+ * A copyright notice - see below.
+ * Prerequisites - what else you may need to have.
+ * How to build it - possible changes to Makefile.PL etc.
+ * How to install it.
+ * Recent changes in this release, especially incompatibilities
+ * Changes / enhancements you plan to make in the future.
+
+If the README file seems to be getting too large you may wish to split out
+some of the sections into separate files: INSTALL, Copying, ToDo etc.
+
+2.8 Adding a Copyright Notice.
+
+How you choose to licence your work is a personal decision. The general
+mechanism is to assert your Copyright and then make a declaration of how
+others may copy/use/modify your work.
+
+Perl, for example, is supplied with two types of licence: The GNU GPL and
+The Artistic License (see the files README, Copying and Artistic). Larry has
+good reasons for NOT just using the GNU GPL.
+
+My personal recommendation, out of respect for Larry, Perl and the perl
+community at large is to simply state something like:
+
+ Copyright (c) 1997 Your Name. All rights reserved. This program is
+ free software; you can redistribute it and/or modify it under the
+ same terms as Perl itself.
+
+This statement should at least appear in the README file. You may also wish
+to include it in a Copying file and your source files. Remember to include
+the other words in addition to the Copyright.
+
+2.9 Give the module a version/issue/release number.
+
+To be fully compatible with the Exporter and MakeMaker modules you should
+store your module's version number in a non-my package variable called
+$VERSION. This should be a valid floating point number with at least two
+digits after the decimal (ie hundredths, e.g, $VERSION = "0.01"). See
+Exporter.pm for details.
+
+Don't use a "1.3.2" style version directly. If you use RCS or a similar
+system which supports multilevel versions/branches you can use this (but put
+it all on one line for MakeMaker VERSION_FROM):
+
+$VERSION = do { my @r=(q$Revision$=~/\d+/g); sprintf
+"%d."."%02d"x$#r,@r };
+
+It may be handy to add a function or method to retrieve the number. Use the
+number in announcements and archive file names when releasing the module
+(ModuleName-1.02.tar.gz). See perldoc ExtUtils::MakeMaker.pm for details.
+
+2.10 Listing Prerequisites in a Bundle module
+
+If your module needs some others that are available on CPAN, you might
+consider creating a 'bundle' module that lists all the prerequisites in a
+standardized way. Automatic installation software such as the CPAN.pm module
+can take advantage of such a listing and enable your users to install all
+prerequisites and your own module with one single command. See the CPAN.pm
+module for details.
+
+2.11 How to release and distribute a module.
+
+By far the best way to release modules is to register yourself with the Perl
+Authors Upload Server (PAUSE). By registering with PAUSE you will be able to
+easily upload (or mirror) your modules to the PAUSE server from where they
+will be mirrored to CPAN sites across the planet.
+
+It's good idea to post an announcement of the availability of your module to
+the comp.lang.perl.announce Usenet newsgroup. This will at least ensure very
+wide once-off distribution.
+
+If not using PAUSE you should place the module into a major ftp archive and
+include details of it's location in your announcement. Some notes about ftp
+archives: Please use a long descriptive file name which includes the version
+number. Most incoming directories will not be readable/listable, i.e., you
+won't be able to see your file after uploading it. Remember to send your
+email notification message as soon as possible after uploading else your
+file may get deleted automatically. Allow time for the file to be processed
+and/or check the file has been processed before announcing its location.
+
+FTP Archives for Perl Modules:
+
+Follow the instructions and links on
+
+http://www.cpan.org/modules/04pause.html
+
+or upload to:
+
+ftp://pause.kbx.de/incoming
+
+and notify upload@pause.kbx.de .
+
+By using the PAUSE WWW interface you can ask the Upload Server to mirror
+your modules from your ftp or WWW site into your own directory on CPAN.
+Please remember to send us an updated entry for the Module list!
+
+2.12 Take care when changing a released module.
+
+Always strive to remain compatible with previous released versions (see 2.2
+above) Otherwise try to add a mechanism to revert to the old behaviour if
+people rely on it. Document incompatible changes.
+
+3) Guidelines for Converting Perl 4 Library Scripts into Modules
+
+3.1 There is no requirement to convert anything.
+
+If it ain't broke, don't fix it! Perl 4 library scripts should continue to
+work with no problems. You may need to make some minor changes (like
+escaping non-array @'s in double quoted strings) but there is no need to
+convert a .pl file into a Module for just that. See perltrap.pod for details
+of all known perl4-to-perl5 issues.
+
+3.2 Consider the implications.
+
+All the perl applications which make use of the script will need to be
+changed (slightly) if the script is converted into a module. Is it worth it
+unless you plan to make other changes at the same time?
+
+3.3 Make the most of the opportunity.
+
+If you are going to convert the script to a module you can use the
+opportunity to redesign the interface. The 'Guidelines for Module Creation'
+above include many of the issues you should consider.
+
+3.4 The pl2pm utility will get you started.
+
+This utility will read *.pl files (given as parameters) and write
+corresponding *.pm files. The pl2pm utilities does the following:
+
+ * Adds the standard Module prologue lines
+ * Converts package specifiers from ' to ::
+ * Converts die(...) to croak(...)
+ * Several other minor changes
+
+Being a mechanical process pl2pm is not bullet proof. The converted code
+will need careful checking, especially any package statements. Don't delete
+the original .pl file till the new .pm one works!
+
+4) Guidelines for Reusing Application Code
+
+4.1 Complete applications rarely belong in the Perl Module Library.
+
+4.2 Many applications contain some perl code which could be reused. Help
+save the world! Share your code in a form that makes it easy to reuse.
+
+4.3 Break-out the reusable code into one or more separate module files.
+
+4.4 Take the opportunity to reconsider and redesign the interfaces.
+
+4.5 In some cases the 'application' can then be reduced to a small fragment
+of code built on top of the reusable modules. In these cases the application
+could invoked as:
+
+5) Namespace Coordination
+
+The maintainers of the module list are not the Internic for perl namespaces.
+They do neither sell namespaces nor can they establish property rights. What
+they try to do is to minimize namespace clashes and maximize usablility of
+the CPAN archive by setting up a catalogue of modules and control the
+indexers. Time permitting, they will also try to give advice for what they
+think is a proper usage of the namespace.
+
+It is an important part of the namespace concept that the module list
+maintainers do not guarantee to you that somebody else won't use the, say,
+Foo::Bar namespace. The upload area is not censored except for abuse. People
+are free to upload any modules they like. Instead, there are several levels
+of protection for your namespaces:
+
+a) The most important is the module list which actually lists and proclaims
+your namespace.
+
+b) The second is the indexing mechanism of the CPAN. Modules are indexed on
+a first-come-first-serve basis. The module namespace that is uploaded for
+the first time ever gets indexed, but not the module of the second one who
+tries to use the same namespace.
+
+c) As the whole process is trying to benefit the community, all parties are
+subject to a wider monitoring within the community. This is sometimes
+referred to as security by visibility.
+
+d) So the next level of namespace protection is the common sense. Your own
+common sense. Help to save the world. If you get the impression that
+something goes wrong with regard to namespaces, please write to
+modules@perl.org and let them know.
+
+e) The perhaps most interesting namespace protection is provided by the perl
+symbol table itself. A namespace Foo:: is just a package name and its
+relationship to a namespace Foo::Bar:: is not predetermined whatsoever. The
+two namespaces can be closely or loosely related or not related at all, but
+what's most important, they can be writen by different authors who may work
+rather independently from each other. So if you have registered any
+namespace, it does not mean that you own the whole namespace tree that
+starts there. If you are registered as the contact for Foo::Bar, you are not
+necessarily also associated with Foo::Bar::Baz.
+
+f) In a few rare cases the module list people restrict indexing of certain
+categories. For example: DBI::* under the control of Tim Bunce Sun::* under
+the control of Sun Microsystems
+
+Part 2 - The Perl 5 Module List
+
+The remainder of this document is divided up into sections. Each section
+deals with a particular topic and lists all known modules related to that
+topic. Modules are only listed in one section so check all sections that
+might related to your particular needs.
+
+All the information corresponds to the latest updates we have received. We
+don't record the version number or release dates of the listed Modules. Nor
+do we record the locations of these Modules. Consult the contact, try the
+usual perl CPAN sites or ask in comp.lang.perl.modules. Please do *not* ask
+us directly, we simply don't have the time. Sorry.
+
+1) Module Listing Format
+
+Each Module listing is very short. The main goal is to simply publish the
+existence of the modules, or ideas for modules, and enough contact
+information for you to find out more. Each listing includes some characters
+which convey (approximate) basic status information.
+
+For example:
+
+Name DSLI Description Info
+------------- ---- -------------------------------------------- -----
+Fcntl Sdcf Defines fcntl() constants (see File::Lock) JHI
+
+Where the 'DSLI' characters have the following meanings:
+
+ * D - Development Stage (Note: *NO IMPLIED TIMESCALES*):
+ *
+ o i - Idea, listed to gain consensus or as a placeholder
+ o c - under construction but pre-alpha (not yet released)
+ o a/b - Alpha/Beta testing
+ o R - Released
+ o M - Mature (no rigorous definition)
+ o S - Standard, supplied with Perl 5
+
+ * S - Support Level:
+ *
+ o m - Mailing-list
+ o d - Developer
+ o u - Usenet newsgroup comp.lang.perl.modules
+ o n - None known, try comp.lang.perl.modules
+
+ * L - Language Used:
+ *
+ o p - Perl-only, no compiler needed, should be platform independent
+ o c - C and perl, a C compiler will be needed
+ o h - Hybrid, written in perl with optional C code, no compiler
+ needed
+ o + - C++ and perl, a C++ compiler will be needed
+ o o - perl and another language other than C or C++
+
+ * I - Interface Style
+ *
+ o f - plain Functions, no references used
+ o h - hybrid, object and function interfaces available
+ o n - no interface at all (huh?)
+ o r - some use of unblessed References or ties
+ o O - Object oriented using blessed references and/or inheritance
+
+Where letters are missing they can usually be inferred from the others. For
+example 'i' implies 'id', 'S' implies 'Su'.
+
+The Info column gives a contact reference 'tag'. Lookup this tag in the
+"Information / Contact Reference Details" section in Pert 3 of this
+document. If no contact is given always try asking in
+comp.lang.perl.modules.
+
+Most Modules are nested in categories such as IPC::Open2 and IPC::Open3.
+These are shown as 'IPC::' on one line then each module listed below with a
+'::' prefix.
+
+Ideas For Adoption
+
+Modules listed as in the 'i' Development Stage with no contact reference are
+ideas without an owner. Feel free to 'adopt' these but please let me know so
+that we can update the list and thus inform anyone else who might be
+interested. Adoption simply means that you either hope to implement the
+module one day or would like to cooperate with anyone else who might be
+interested in implementing it.
+
+Cooperation
+
+Similarly, if an idea that interests you has been adopted by someone please
+contact them so you can share ideas. Just because an idea has been adopted
+does NOT imply that it's going to be implemented. Just because a module is
+listed and being implemented does NOT mean it'll get finished. Waiting
+silently in the hope that the Module will appear one day is unlikely to be
+fruitful! Offer to help. Cooperate. Pool your efforts. Go on, try it!
+
+The same applies to modules in all states. Most modules are developed in
+limited spare time. If you're interested in a module don't just wait for it
+to happen, offer to help.
+
+Module developers should feel free to announce incomplete work early. If
+you're not going to be able to spend much time on something then say so. If
+you invite cooperation maybe someone will implement it for you!
+
+2) Perl Core Modules, Perl Language Extensions and Documentation Tools
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+CORE Sucf Internal package for perl native functions P5P
+UNIVERSAL SucO Internal universal base-class JACKS
+SUPER SucO Internal class to access superclass methods P5P
+DynaLoader SucO Dynamic loader for shared libraries P5P
+AutoLoader SupO Automatic function loader (using AutoSplit) P5P
+SelfLoader SdpO Automatic function loader (using __DATA__) JACKS
+Exporter SupO Implements default import method for modules P5P
+Carp Supf Throw exceptions outside current package P5P
+Config Supf Stores details of perl build configuration P5P
+English Supf Defines English names for special variables P5P
+Symbol SupO Create 'anonymous' symbol (typeglobs) refs CHIPS
+Opcode Supf Disable named opcodes when compiling code TIMB
+Taint bdpf Utilities related to tainting PHOENIX
+
+Perl Pragmatic Modules
+
+constant Supf Define compile-time constants P5P
+diagnostics Sdpf For reporting perl diagnostics in full form TOMC
+enum cdpf resemble enumerated types in C ZENIN
+integer Supf Controls float vs. integer arithmetic P5P
+less Supf Controls optimisations (yet unimplemented) P5P
+lib Supf Simple way to add/delete directories in @INC P5P
+overload SdpO Overload perl operators for new data types ILYAZ
+sigtrap Supf For trapping an abort and giving a traceback P5P
+strict Supf Controls averments (similar to pragmas) P5P
+subs Supf use subs qw(x y); is short for sub x; sub y; P5P
+vars Supf predeclare variable names P5P
+
+Experimental pragmatic modules live in the ex:: namespace
+
+ex::
+::implements RdpO Study in Polymorphism PDCAWLEY
+::interface RdpO Another study in polymorphism PDCAWLEY
+::override Rdpf perl pragma to override core functions CTWETEN
+
+ex::constant::
+::vars Rdph Perl pragma to create readonly variables CTWETEN
+
+Perl Language Extensions
+
+Alias bdcf Convenient access to data/code via aliases GSAR
+End RdpO Generalized END {}. ABIGAIL
+Error adpO Error/exception handling in an OO-ish way GBARR
+Perl adcO Create Perl interpreters from within Perl GSAR
+Protect bdpf declare subs private or member JDUNCAN
+Regexp adcO An OO interface to regular expressions GBARR
+Safe SdcO Restrict eval'd code to safe subset of ops MICB
+Softref bdcf Extension for weak/soft referenced SVs ILYAZ
+
+Inline adp? Easy way to use other languages in Perl INGY
+Inline::
+::CPR adpn C Perl Run - Embed Perl in C, ala Inline INGY
+::C bdpn Write C extensions in Perl the easy way INGY
+::CPP adpO Easy implementation of C++ extensions NEILW
+::Python adpO Easy implementation of Python extensions NEILW
+
+Exporter::
+::Import Rdpn Alternate symbol exporter GARROW
+::Options adpO Extends Exporter to handle use-line options YSTH
+::PkgAlias adpf Load a module into multiple namespaces JDPORTER
+
+Safe::
+::Hole bdcO Exec subs in the original package from Safe SEYN
+
+Symbol::
+::Table RdpO OO interface to package symbols GARROW
+
+Test Sdpf Utilities for writing test scripts JPRIT
+Test::
+::Cmd RdpO Portable test infrastructure for commands KNIGHT
+::Harness Supf Executes perl-style tests P5P
+::Unit adpO simple framework for unit testing CLEMBURG
+::Suite cdpO tbs HENKE
+::Case cdpO tbs HENKE
+
+The Perl Compiler
+
+B aucO The Perl Compiler MICB
+O aucO Perl Compiler frontends MICB
+
+B::
+::Fathom bdpO Estimate the readability of Perl code KSTAR
+::Graph bdpr Perl Compiler backend to diagram OP trees SMCCAM
+::LexInfo bdcO Show info about subroutine lexical variables DOUGM
+::Size bdcO Measure size of Perl OPs and SVs DOUGM
+::TerseSize bdpO Info about ops and their (estimated) size DOUGM
+
+Source Code Filters
+
+Filter::Util::
+::Exec bdcf Interface for creation of coprocess Filters PMQS
+::Call bdcf Interface for creation of Perl Filters PMQS
+
+Filter::
+::exec bdcf Filters script through an external command PMQS
+::sh bdcf Filters script through a shell command PMQS
+::cpp bdcf Filters script through C preprocessor PMQS
+::tee bdcf Copies to file perl source being compiled PMQS
+::decrypt bdcf Template for a perl source decryption filter PMQS
+
+Thread support (note that these are experimental, i.e. pre-alpha)
+
+Thread cuhO Manipulate threads in Perl (EXPERIMENTAL) P5P
+
+Thread::
+::Group bdph Wait()-like and grouping functions DSUGAL
+::IO i IO routines DSUGAL
+::Object i OO routines DSUGAL
+::Pool bdpO Worker pools to run Perl code asynchronously MICB
+::Queue cuph Thread-safe queues P5P
+::Semaphore cuph Thread-safe semaphores P5P
+::Signal cuhh A thread which runs signal handlers reliably P5P
+::Specific cuhh Thread-specific keys P5P
+
+Module Support
+
+Module::
+::Reload Rdpf Reloads files in %INC based on timestamps JPRIT
+
+Documentation Tools:
+
+Pod::
+::Diff cdpf compare two POD files and report diff IANC
+::HTML cdpr converter to HTML KJALB
+::Index cdpr index generator KJALB
+::Latex cdpr converter to LaTeX KJALB
+::LaTeX bdpO Converts pod to latex with Pod::Parser TJENNESS
+::Lint cdpO Lint-style validator for pod NEILB
+::Lyx adpO A pod to LyX format conversion class RICHARDJ
+::Man cdpr converter to man page KJALB
+::MIF adpO converter to FrameMaker MIF JNH
+::Parser bdpO Base class for parsing pod syntax BRADAPP
+::Pdf bdpf Converter to PDF AJFRY
+::Pod cdpr converter to canonical pod KJALB
+::RTF cdpr converter to RTF KJALB
+::Sdf cdpf converter to SDF IANC
+::Select bdpf Print only selected sections of pod docs BRADAPP
+::Simplify cdpr Common pod parsing code KJALB
+::Texinfo cdpr converter to texinfo KJALB
+::Text Supf convert POD data to formatted ASCII text TOMC
+::Usage bdpf Print Usage messages based on your own pod BRADAPP
+::Rtf RdpO Converter from POD to Rich Text Format PVHP
+::Hlp RdpO Convert POD to formatted VMS Help text PVHP
+::XML RdpO Generate XML from POD MSERGEANT
+::PP idpO A Pod pre-processor RAM
+
+3) Development Support
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+AutoSplit Supf Splits modules into files for AutoLoader P5P
+Benchmark Supf Easy way to time fragments of perl code P5P
+Conjury Rdp? Generic software construction toolset JWOODYATT
+Coy Rdpn Like Carp - only prettier DCONWAY
+FindBin adpf Locate current script bin directory GBARR
+Include adpO Parse C header files for use in XS GBARR
+Make adpO Makefile parsing, and 'make' replacement NI-S
+Usage bupr Type and range checking on subroutine args JACKS
+
+ExtUtils::
+::DynaGlue adcr Methods for generating Perl extension files DOUGM
+::MakeMaker SupO Writes Makefiles for extensions MMML
+::Manifest Supf Utilities for managing MANIFEST files MMML
+::Typemap i xsubpp typemap handling WPS
+::Embed Sdpf Utilities for embedding Perl in C/C++ apps DOUGM
+::F77 RdpO Facilitate use of FORTRAN from Perl/XS code KGB
+
+Carp::
+::Assert adpf Stating the obvious to let the computer know MSCHWERN
+::CheckArgs Rdpf Check subroutine argument types GARROW
+
+Devel::
+::CallerItem RupO 'caller()' Object wrapper + useful methods JACKS
+::CoreStack adpf generate a stack dump from a core file ADESC
+::Coverage adpf Coverage analysis for Perl code RJRAY
+::Datum cdpf Debugging And Tracing Ultimate Module CDE
+::DebugAPI bdpf Interface to the Perl debug environment JHA
+::DebugInit i Create a .gdbinit or similar file JASONS
+::DProf Rdcf Execution profiler DMR
+::DumpStack Rupf Dumping of the current function stack JACKS
+::Leak Rdcf Find perl objects that are not reclaimed NI-S
+::PPPort bdcn Portability aid for your XS code KJALB
+::Peek adcf Peek at internal representation of Perl data ILYAZ
+::RegExp adcO Access perl internal regex functions ILYAZ
+::SmallProf Rdpf Line-by-line profiler ASHTED
+::StackTrace RdpO Stacktrace object w/ info like Carp::confess DROLSKY
+::Symdump RdpO Perl symbol table access and dumping ANDK
+::TraceFuncs adpO Trace funcs by using object destructions JOEHIL
+::TraceLoad Rdpf Traces the loading of perl source code JPRIT
+::Modlist Rdpf Collect module use information RJRAY
+
+Exception::
+::Class bdpO Declare exception class hierarchies DROLSKY
+::Cxx Rd+f Cause perl to longjmp using C++ exceptions JPRIT
+
+Perf:: Performance measurement other than benchmarks
+::ARM adcf Application Response Measurement BBACKER
+
+Rcs adcf Alternate RCS interface (see VCS::RCS) CFRETER
+VCS ampO Generic interface to Version Control Systems LBROCARD
+
+VCS::
+::CVS RdpO Interface to GNU's CVS RSAVAGE
+::PVCS i PVCS Version Manager (intersolv.com) BMIDD
+::RCS idpf Interface layer over RCS (See also Rcs) RJRAY
+::RCE idcf Perl layer over RCE C API RJRAY
+
+ClearCase idcf Environment for ClearCase revision control BRADAPP
+ClearCase::
+::Ct Mnpf Generic cleartool wrapper DSB
+
+Sub::
+::Curry Rdpf Perl module to curry functions ((á la Lisp)) DAVIDH
+
+Perlbug RdpO Database driven bug tracking system RFOLEY
+
+Continuus adpO Interface to Continuus Code Management tool HENKE
+
+4) Operating System Interfaces, Hardware Drivers
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Env Supf Alias environment variables as perl vars P5P
+Errno cdpf Constants from errno.h EACCES, ENOENT etc GBARR
+Fcntl Sdcf Defines fcntl() constants (see File::Lock) JHI
+Ioctl adcf ioctl(2) constants JPRIT
+POSIX SupO An interface to most (all?) of POSIX.1 P5P
+Shell Supf Run shell commands transparently within perl P5P
+
+Async::
+::Group adpO Deal with simultaneous asynchronous calls DDUMONT
+::Process i class to run sub-processes DDUMONT
+
+BSD::
+::HostIdent i s/gethostname(), s/gethostid() JHI
+::Ipfwgen bdpf Generate ipfw(8) filters MUIR
+::Resource Rdcf getrusage(), s/getrlimit(), s/getpriority() JHI
+
+Env::
+::Path adpO Advanced operations on path variables DSB
+
+Proc::
+::Background RdpO OS independent background process objects BZAJAC
+::ExitStatus Rdpf Interpret and act on wait() status values ROSCH
+::Forkfunc Rdpf Simple lwall-style fork wrapper MUIR
+::ProcessTable adcO Unix process table information DURIST
+::SafePipe bdpf popen() and `` without calling the shell ROSCH
+::Short adpO System calls with timeout option JHKIM
+::Simple adpO Fork wrapper with objects MSCHILLI
+::Spawn Rdpf Run external programs GARROW
+::SyncExec Rdpf Spawn processes but report exec() errors ROSCH
+::times adpf By-name interface to process times function TOMC
+
+GTop bdcO Perl interface to libgtop DOUGM
+
+Schedule:: See also Schedule:: in chapter 23
+::At Rd OS independent interface to the at command JOSERODR
+::ByClock adpO Return at given times SCHAFFTER
+::Cron adpO cron-like scheduler for perl subroutines ROLAND
+::Load RdpO Remote system load, processes, scheduling WSNYDER
+
+Quota Rdcf Disk quota system functions, local & remote TOMZO
+
+Sys::
+::AlarmCall Rupf Timeout on any sub. Allows nested alarms JACKS
+::Hostname Supf Implements a portable hostname function P5P
+::Sysconf bdpf Defines constants for POSIX::sysconf() NI-S
+::Syslog Supf Provides same functionality as BSD syslog P5P
+
+ Note: The Sys:: namespace is considered harmful as it is giving no
+ clue about which system. Placing additional modules into this
+ namespace is discouraged.
+
+Platform Specific Modules
+
+Be::
+::Attribute Rd+f Manipulate BeOS BFS MIME file attributes TSPIN
+::Query Rd+f Query a BeOS file system TSPIN
+
+FreeBSD::
+::SysCalls cdcf FreeBSD-specific system calls GARY
+
+Mac:: Macintosh specific modules
+::AppleEvents bmcO AppleEvent manager and AEGizmos MCPL
+::AssistantFrames RdpO Easy creation of assistant dialogs GBAUER
+::Components bmcO (QuickTime) Component manager MCPL
+::Files bmcO File manager MCPL
+::Gestalt bmcO Gestalt manager: Environment enquiries MCPL
+::Glue bdpO Control apps with AppleScript terminology CNANDOR
+::Macbinary bdpO Decodes MacBinary files. MIYAGAWA
+::Memory bmcO Memory manager MCPL
+::MoreFiles bmcO Further file management routines MCPL
+::OSA bmcO Open Scripting Architecture MCPL
+::Processes bmcO Process manager MCPL
+::Resources bmcO Resource manager MCPL
+::Serial bdpO Interface to Macintosh serial ports DIVERDI
+::Types bmcO (Un-)Packing of Macintosh specific types MCPL
+
+Mac::AppleEvents::
+::Simple Rdph Simple access to Mac::AppleEvents CNANDOR
+
+Mac::Apps::
+::Anarchie RdpO Control Anarchie 2.01+ CNANDOR
+::Launch Rdpf MacPerl module to launch / quit apps CNANDOR
+::MacPGP RdpO Control MacPGP 2.6.3 CNANDOR
+::PBar RdpO Control Progress Bar 1.0.1 CNANDOR
+
+Mac::Comm::
+::OT_PPP RdpO Control Open Transport PPP / Remote Access CNANDOR
+
+Mac::FileSpec::
+::Unixish Mdpf Unixish-compatability in filespecs SBURKE
+
+Mac::OSA::
+::Simple Rdph Simple access to Mac::OSA CNANDOR
+
+MSDOS::
+::Attrib bdcf Get/set DOS file attributes in OS/2 or Win32 CJM
+::Descript bdpO Manage 4DOS style DESCRIPT.ION files CJM
+::SysCalls adcf MSDOS interface (interrupts, port I/O) DMO
+
+MVS::
+::VBFile bdpf Read MVS VB (variable-length) files GROMMEL
+
+NeXTStep::
+::NetInfo idcO NeXTStep's NetInfo (like ONC NIS) PGUEN
+
+Netware::
+::NDS cd+O Interface to Novell Directory Services KTHOMAS
+::Bindery cd+O Interface to Novell Bindery mode calls KTHOMAS
+
+OS2::
+::ExtAttr RdcO (Tied) access to extended attributes ILYAZ
+::FTP bncf Access to ftplib interface ILYAZ
+::PrfDB RdcO (Tied) access to .INI-style databases ILYAZ
+::REXX RdcO Access to REXX DLLs and REXX runtime ILYAZ
+::UPM bncf User Profile Management ILYAZ
+
+Riscos i Namespace for Risc-OS (Acorn et.al.) RISCOSML
+
+SGI::
+::SysCalls cdcf SGI-specific system calls AMOSS
+::GL adcr SGI's Iris GL library AMOSS
+::FM adcr SGI's Font Management library AMOSS
+::FAM RdcO Interface to SGI/Irix File Access Monitor JGLICK
+
+Solaris::
+::ACL adch Provides access to ACLs in Solaris IROBERTS
+::Kmem idcf Read values from the running kernel ABURLISON
+::Kstat adcO Access kernel performance statistics ABURLISON
+::MIB idcO Access STREAMS network statistics ABURLISON
+::MapDev bdpf Maps sdNN disk names to cNtNdN disk names ABURLISON
+::NDD idcO Access network device statistics ABURLISON
+::Procfs adhh Access to the Solaris /proc filesystem JNOLAN
+::InstallDB bdp? Searches for Solaris package/system info CHRISJ
+::Package bdpO Access a Solaris package pkginfo file CHRISJ
+::Contents bdp? Access a Solaris contents file CHRISJ
+
+Unix::
+::ConfigFile adpO Abstract interfaces to Unix config files SSNODGRA
+::Processors RdcO Interface to per-processor information WSNYDER
+::Syslog i Interface to syslog functions in a C-library MHARNISCH
+::UserAdmin Rdpf Interface to Unix Account Information JZAWODNY
+
+VMS::
+::Device Rdcr Access info about any device on a VMS system DSUGAL
+::Filespec Sdcf VMS and Unix file name syntax CBAIL
+::ICC bdcr Interface to the ICC facilities in VMS 7.2+ DSUGAL
+::Lock cncO Object interface to $ENQ (VMS lock mgr) BHUGHES
+::Misc Rdcr Miscellaneous VMS utility routines DSUGAL
+::Monitor Rdcr Access VMS system performance info DSUGAL
+::Persona Rdcf Interface to the VMS Persona services DSUGAL
+::Priv Rdcf Access VMS Privileges for processes DSUGAL
+::Process Rdcf Process management on VMS DSUGAL
+::Queue bdcf Manage queues and entries DSUGAL
+::SysCalls i VMS-specific system calls CBAIL
+::System Rdcf VMS-specific system calls DSUGAL
+::User bdcr Read access to system UAF data DSUGAL
+
+Portable Digital Assistants
+
+PDA::
+::Pilot amcO Interface to pilot-link library KJALB
+::PilotDesktop i Managing Pilot Desktop databases software JWIEGLEY
+
+Hardware related modules
+
+Hardware::
+::Simulator adpf Simulate different pieces of hardware GSLONDON
+
+Device::
+::SerialPort bdpO POSIX clone of Win32::SerialPort BBIRTH
+::SVGA c SVGA Graphic card driver SCOTTVR
+
+Device::ISDN::
+::OCLM bd?? Perl interface to the 3com OCLM ISDN TA MERLIN
+
+5) Networking, Device Control (modems) and InterProcess Communication
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Socket Smcf Defines socket-related constants GNAT
+Socket6 adcf getaddrinfo/getnameinfo support module UMEMOTO
+Ptty adcf Pseudo terminal interface functions NI-S
+
+Socket::
+::PassAccessRights adcf Pass file descriptor via Unix domain socket SAMPO
+
+Net::
+::ACAP adpO Interface to ACAP Protocol (Internet-Draft) KJOHNSON
+::AIM adpO AOL Instant Messenger TOC protocol ARYEH
+::AOLIM bdpO AOL Instant Messenger OO Interface (TOC) RWAHBY
+::Bind adpO Interface to bind daemon files KJOHNSON
+::CDDB cdpr Interface to the CDDB (CD Database) DSTALDER
+::Cmd cdpO For command based protocols (FTP, SMTP etc) GBARR
+::DLookup adpO Lookup domains on Internic and 2-letter TLDs DJASMINE
+::DNS bdpO Interface to the DNS resolver MFUHR
+::Daemon adpO Abstract base class for portable servers JWIED
+::Dict cdpO Client of Dictionary Server Protocol (DICT) ABIGAIL
+::Dnet cdcO DECnet-specific socket usage SPIDB
+::Domain adpf Try to determine TCP domain name of system GBARR
+::DummyInetd RdpO A dummy Inetd server GBARR
+::FTP adpf Interface to File Transfer Protocol GBARR
+::Gen RdcO Generic support for socket usage SPIDB
+::Goofey RdpO Communicate with a Goofey server GOSSAMER
+::Hotline RdpO Interface to the Hotline protocol JSIRACUSA
+::ICAP adpO Interface to ICAP Protocol (Internet-Draft) KJOHNSON
+::ICB bdpO ICB style chat server interface JMV
+::IMAP adpO Interface to IMAP Protocol (RFC2060) KJOHNSON
+::IRC cdpO Internet Relay Chat interface DSHEPP
+::Ident RdpO Performs ident (rfc1413) lookups JPC
+::Inet RdcO Internet (IP) socket usage SPIDB
+::Interface adcO ifconfig(1) implementation SRZ
+::Jabber ampO Access to the Jabber protocol REATMON
+::LDAP adpO Interface to LDAP Protocol (RFC1777) PLDAP
+::LDAPapi Rdcf Interface to UMICH and Netscape LDAP C API CDONLEY
+::MsgLink cdpO Abstraction of "user" part for message link RAM
+::NIS adcO Interface to Sun's NIS RIK
+::NISPlus adcO Interface to Sun's NIS+ RIK
+::NNTP adpO Client interface to NNTP protocol GBARR
+::Netmask RdpO Understand and manipulate network blocks MUIR
+::Netrc adpO Support for .netrc files GBARR
+::PH RdpO CCSO Nameserver Client class GBARR
+::POP3 adpO Client interface to POP3 protocol GBARR
+::Patricia RdcO Patricia Trie perl module for fast IP addres PLONKA
+::Pcap adcr An interface for LBL's packet capture lib PLISTER
+::Ping SupO TCP and ICMP ping RMOSE
+::Printer RdpO Direct to lpd printing CFUHRMAN
+::SMTP adpf Interface to Simple Mail Transfer Protocol GBARR
+::SNMP adpO Interface to SNMP Protocol (RFC1157) GBARR
+::SNPP cdpO Client interface to SNPP protocol GBARR
+::SOCKS cdcf TCP/IP access through firewalls using SOCKS SCOOPER
+::SSLeay bmhf Secure Socket Layer (based on OpenSSL) SAMPO
+::Syslog RdpO Forwarded syslog protocol LHOWARD
+::TCP RdcO TCP-specific socket usage SPIDB
+::TFTP cdpf Interface to Trivial File Transfer Protocol GSM
+::Telnet RdpO Interact with TELNET port or other TCP ports JROGERS
+::Time adpf Obtain time from remote machines GBARR
+::Traceroute bdpO Trace routes HAG
+::UDP RdcO UDP-specific socket usage SPIDB
+::VNC i??? Interface VNC remote frame buffer protocol BRONG
+::hostent adpf A by-name interface for hosts functions TOMC
+::netent adpf A by-name interface for networks functions TOMC
+::protoent adpf A by-name interface for protocols functions TOMC
+::servent adpf A by-name interface for services functions TOMC
+::xAP adpO Interface to IMAP,ACAP,ICAP substrate KJOHNSON
+::Z3950 adcO OO interface to the Yaz Z39.50 toolkit MIRK
+::SSL RdcO Glue that enables LWP to access https URIs CHAMAS
+::Pager RdpO Send Numeric/AlphaNumeric Pages to any pager ROOTLEVEL
+::Whois RdpO Get+parse "whois" domain data from InterNIC DHUDES
+::XWhois RdpO Whois Client Interface for Perl5. VIPUL
+::ICQ bmpO Client interface to ICQ messaging JMUHLICH
+
+Net::Daemon::
+::SSL RdpO SSL extension for Net::Daemon MKUL
+
+Net::IMAP::
+::Simple bdpO Only implements the basic IMAP features JPAF
+
+Net::SNMP::
+::Interfaces RdpO Obtain network interface info via SNMP JSTOWE
+
+Net::Telnet::
+::Cisco RdpO Net::Telnet wrapper for Cisco devices JOSHUA
+
+NetAddr::
+::IP RdpO Manipulation and operations on IP addresses LUISMUNOZ
+
+IPC::
+::Cache adpO Shared-memory object cache DCLINTON
+::Chat2 ? Out-of-service during refit! GBARR
+::ChildSafe RdcO Control child process w/o risk of deadlock DSB
+::Globalspace cdpO Multi-process shared hash and shared events JACKS
+::LDT Rdpf Implements a length based IPC protocol JSTENZEL
+::Locker RdpO Shared semaphore locks across a network WSNYDER
+::Mmap i Interface to Unix's mmap() shared memory MICB
+::Open2 Supf Open a process for both reading and writing P5P
+::Open3 Supf Like IPC::Open2 but with error handling P5P
+::Run bdph Child procs w/ piping, redir and psuedo-ttys RBS
+::Session anpO remote shell session mgr; wraps open3() STEVEGT
+::Shareable bdpr Tie a variable to shared memory BSUGARS
+::SharedCache Rmpr Manage a cache in SysV IPC shared memory SAMTREGAR
+::Signal Rdpf Translate signal names to/from numbers ROSCH
+::SysV adcr shared memory, semaphores, messages etc JACKS
+::XPA adch Interface to SAO XPA messaging system DJERIUS
+
+RPC:: Remote Procedure Calls (see also DCE::RPC)
+::PlServer RdpO Interface for building Perl Servers JWIED
+::PlClient RdpO Interface for building pServer Clients JWIED
+::ONC adcO ONC RPC interface (works with perlrpcgen) JAKE
+::Simple adpO Simple OO async remote procedure calls DDUMONT
+
+DCE:: Distributed Computing Environment (OSF)
+::ACL bdcO Interface to Access Control List protocol PHENSON
+::DFS bdcO DCE Distributed File System interface PHENSON
+::Login bdcO Interface to login functions PHENSON
+::RPC c Remote Procedure Calls PHENSON
+::Registry bdcO DCE registry functions PHENSON
+::Status bdpr Make sense of DCE status codes PHENSON
+::UUID bdcf Misc uuid functions PHENSON
+
+NetPacket::
+::ARP adpO Address Resolution Protocol TIMPOTTER
+::Ethernet adpO Ethernet framed data TIMPOTTER
+::IGMP adpO Internet Group Management Protocol TIMPOTTER
+::IP adpO Internet Protocol TIMPOTTER
+::TCP adpO Transmission Control Protocol TIMPOTTER
+::UDP adpO User Datagram Protocol TIMPOTTER
+
+Proxy i Transport-independent remote processing MICB
+Proxy::
+::Tk ? Tk transport class for Proxy (part of Tk) MICB
+
+Fwctl bmpO Interface to Linux packet filtering firewall FRAJULAC
+LSF cdcO Interface to the Load Sharing Facility API PFRANCEUS
+TFTP bdpO Interface to TFTP (rfc1350) GSM
+ToolTalk adcr Interface to the ToolTalk messaging service MARCP
+
+SOAP cmpO SOAP/Perl language mapping KBROWN
+
+IPChains RdcO Create and Manipulate ipchains JESSICAQ
+IPChains::
+::PortFW bdpO Interface to ipmasqadm portfw command FRAJULAC
+
+SNMP RdcO Interface to the UCD SNMP toolkit GSM
+SNMP::
+::Monitor adpO Accounting and graphical display JWIED
+::Util RdpO Perform SNMP set,get,walk,next,walk_hash,... WMARQ
+
+Mon::
+::Client RdpO Network monitoring client TROCKIJ
+::SNMP RdpO Network monitoring suite TROCKIJ
+
+Parallel::
+::ForkManager RdpO A simple parallel processing fork manager DLUX
+::Pvm bdcf Interface to the PVM messaging service DLECONTE
+
+CORBA::
+::IOP::IOR adpO Decode, munge, and re-encode CORBA IORs PHILIPA
+::IDLtree adpf IDL to symbol tree translator OMKELLOGG
+
+Modem::
+::VBox RdpO Perl module for creation of voiceboxes MLEHMANN
+::Vgetty bdpO Interface to voice modems using vgetty YENYA
+
+ControlX10::
+::CM10 RmpO Control unit for X10 modules BBIRTH
+::CM17 RmpO inexpensive RF transmit-only X10 BBIRTH
+
+RAS::
+::PortMaster RdpO Interface to Livingston PortMaster STIGMATA
+::AS5200 RdpO Interface to Cisco AS5200 dialup server STIGMATA
+::HiPerARC RdpO Interface to 3Com TotalControl HiPerARC STIGMATA
+
+6) Data Types and Data Type Utilities (see also Database Interfaces)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Math::
+::Amoeba Rdpr Multidimensional Function Minimisation JARW
+::Approx adpO Approximate x,y-values by a function ULPFR
+::BaseCalc RdpO Convert numbers between various bases KWILLIAMS
+::BigFloat SupO Arbitrary size floating point math package MARKB
+::BigInt SupO Arbitrary size integer math package MARKB
+::BigInteger adc Arbitrary size integer as XS extension GARY
+::BigRat ? Arbitrary size rational numbers (fractions) MARKB
+::Brent Rdpr One-dimensional Function Minimisation JARW
+::CDF bdch Cumulative Distribution Functions CALLAHAN
+::Cephes adcf Interface to St. Moshier's Cephes library RKOBES
+::Complex SdpO Complex number data type RAM
+::Derivative Rdpr 1st and 2nd order differentiation of data JARW
+::Expr adpO Parses agebraic expressions HAKANARDO
+::Fortran Rdpf Implements Fortran log10 & sign functions JARW
+::Fourier i Fast Fourier Transforms AQUMSIEH
+::Fraction bdpO Fraction Manipulation KEVINA
+::Geometry adpf 2D and 3D algorithms GMCCAR
+::Integral i Integration of data AQUMSIEH
+::Interpolate Rdpr Polynomial interpolation of data MATKIN
+::LinearProg idp Linear programming utilities JONO
+::Logic RdpO Provides pure 2, 3 or multi-value logic SUMMER
+::Matrix adpO Matrix data type (transpose, multiply etc) ULPFR
+::MatrixBool RdcO Matrix of booleans (Boolean Algebra) STBEY
+::MatrixCplx idpO Matrix data type for Complex Numbers STBEY
+::MatrixReal RdpO Everything you ever wanted to do with Matr. STBEY
+::Pari adcf Interface to the powerful PARI library ILYAZ
+::Polynomial RdpO Polynomials as objects MATKIN
+::Prime i Prime number testing GARY
+::RandomPrime i Generates random primes of x bits GARY
+::Round RdpO Perl extension for rounding numbers GROMMEL
+::SigFigs Rdpf Math using scientific significant figures SBECK
+::Spline RdpO Cubic Spline Interpolation of data JARW
+::Trig bdpf tan asin acos sinh cosh tanh sech cosech JARW
+::TrulyRandom i based on interrupt timing discrepancies GARY
+::VecStat Rdpr Some basic numeric stats on vectors ASPINELLI
+::ematica adcO Interface to the powerful Mathematica system ULPFR
+::Libm RdcO Perl extension for the C math library, libm DSLEWART
+
+Math::Business::
+::EMA adcO An Exponential Moving Average Calculator JETTERO
+
+Statistics::
+::ChiSquare Rdpf Chi Square test - how random is your data? JONO
+::ConwayLife RdpO Simulates life using Conway's algorithm DANB
+::Descriptive RdpO Descriptive statistical methods COLINK
+::LTU RdpO Implements Linear Threshold Units TOMFA
+::MaxEntropy Rdpf Maximum Entropy Modeling TERDOEST
+::OLS bdpO ordinary least squares (curve fitting) SMORTON
+::ROC bdpf ROC curves with nonparametric conf. bounds HAKESTLER
+::Distributions RdpO Perl module for calculating critical values MIKEK
+
+Algorithm::
+::Diff Rdpf Diff (also Longest Common Subsequence) NEDKONZ
+::Permute bdcO Handy and fast permutation with OO interface EDPRATOMO
+
+Algorithm::Graphs::
+::TransitiveClosure RdpO Calculates the transitive closure ABIGAIL
+
+Algorithm::Numerical::
+::Shuffle Rdph Knuth's shuffle algorithm ABIGAIL
+::Sample RDph Knuth's sample algorithm ABIGAIL
+
+PDL amcf Perl Data Language - numeric analysis env PERLDL
+
+PDL::
+::Audio adch Sound synthesis and editing with PDL MLEHMANN
+::Meschach amcf Links PDL to meschach matrix library EGROSS
+::NetCDF bdhO Reads/Writes NetCDF files from/to PDL objs DHUNT
+::Options Rdph Provides hash options handling for PDL TJENNESS
+::PP amcf Automatically generate C code for PDL PERLDL
+::Slatec amof Interface to slatec (linpack+eispack) lib. PERLDL
+
+Quantum::
+::Superpositions RdpO QM-like superpositions in Perl DCONWAY
+
+Array::
+::Compare RdpO Class to compare two arrays DAVECROSS
+::Heap cdpf Manipulate array elements as a heap JMM
+::IntSpan RdpO Handling arrays using IntSpan techniques TEVERETT
+::PrintCols adpf Print elements in vertically sorted columns AKSTE
+::Substr idp Implement array using substr() LWALL
+::Vec idp Implement array using vec() LWALL
+::Virtual idp Implement array using a file LWALL
+::Reform RdpO Convert an array into N-sized array of array TBONE
+
+Hash::
+::NoVivify Rdcf Provide non-autovivifying hash functions BPOWERS
+
+Heap bdpO Define Heap interface JMM
+Heap::
+::Binary bdpO Implement Binary Heap JMM
+::Binomial bdpO Implement Binomial Heap JMM
+::Fibonacci bdpO Implement Fibonacci Heap JMM
+::Elem bdpO Heap Element interface, ISA JMM
+Heap::Elem::
+::Num bdpO Numeric heap element container JMM
+::NumRev bdpO Numeric element reversed order JMM
+::Str bdpO String heap element container JMM
+::StrRev bdpO String element reversed order JMM
+::Ref bdpO Obj ref heap element container JMM
+::RefRev bdpO Obj ref element reversed order JMM
+
+Scalar::
+::Util bdcf Scalar utilities (dualvar reftype etc) GBARR
+
+List::
+::Util bdcf List utilities (eg min, max, reduce) GBARR
+
+Bit::
+::Vector RdcO Virtual (arbitrary machineword size) CPU STBEY
+
+Set::
+::Bag RdpO Bag (multiset) class JHI
+::IntRange RdcO Set of integers (arbitrary intervals, fast) STBEY
+::IntSpan adpO Set of integers newsrc style '1,5-9,11' etc SWMCD
+::NestedGroups RdpO Grouped data eg ACL's, city/state/country ABARCLAY
+::Object bdcO Set of Objects (smalltalkish: IdentitySet) JLLEROY
+::Scalar adpO Set of scalars (inc references) JHI
+::Window bdpO Manages an interval on the integer line SWMCD
+
+Graph::
+::Element RdpO Base class for element of directed graph NEILB
+::Node RdpO A node in a directed graph NEILB
+::Edge RdpO An edge in a directed graph NEILB
+::Kruskal Rdpf Kruskal Algorithm for Minimal Spanning Trees STBEY
+
+Decision::
+::Markov bdpO Build/evaluate Markov models for decisions ALANSZ
+
+Date::
+::Calc Rdcf Gregorian calendar date calculations STBEY
+::Convert cdpO Conversion between Gregorian, Hebrew, more? MORTY
+::CTime adpf Updated ctime.pl with mods for timezones GBARR
+::Format Rdpf Date formatter ala strftime GBARR
+::Interval idpO Lightweight normalised interval data type KTORP
+::Language adpO Multi-language date support GBARR
+::Manip Rdpf Complete date/time manipulation package SBECK
+::Parse Rdpf ASCII Date parser using regexp's GBARR
+::Time idpO Lightweight normalised datetime data type TOBIX
+
+Time::
+::Avail Rdpf Calculate min. remaining in time interval PSANTORO
+::CTime Rdpf Format Times ala ctime(3) with many formats MUIR
+::DaysInMonth Rdpf Returns the number of days in a month MUIR
+::HiRes Rdcf High resolution time, sleep, and alarm DEWEG
+::JulianDay Rdpf Converts y/m/d into seconds MUIR
+::Local Supf Implements timelocal() and timegm() P5P
+::Object adpO Object Oriented time objects MSERGEANT
+::ParseDate Rdpf Parses many forms of dates and times MUIR
+::Period Rdpf Code to deal with time periods PRYAN
+::Timezone Rdpf Figures out timezone offsets MUIR
+::Zone Rdpf Timezone info and translation routines GBARR
+::gmtime Supf A by-name interface for gmtime TOMC
+::localtime Supf A by-name interface for localtime TOMC
+::Seconds RdcO API to convert seconds to other date values MSERGEANT
+
+Calendar::
+::CSA adcO interface with calenders such as Sun and CDE KJALB
+::Hebrew cdpO Hebrew calendar conversion/manipulation YSTH
+::RCM i Russell Calendar Manager HTCHAPMAN
+
+Tie::
+::Hash Supr Base class for implementing tied hashes P5P
+::Scalar Supr Base class for implementing tied scalars P5P
+::Array Supr Base class for implementing tied arrays P5P
+::CPHash bdpO Case preserving but case insensitive hash CJM
+::Cache Mdpr In memory size limited LRU cache CHAMAS
+::DB_FileLock Rdpr Locking access to Berkeley DB 1.x. JMV
+::DB_Lock Rdpr Tie DB_File with automatic locking KWILLIAMS
+::DBI RdpO Tie hash to a DBI handle LDS
+::Dir adpr Tie hash for reading directories GBARR
+::Discovery Rdpr Discover data by caching sub results SIMON
+::File adpr Tie hash to files in a directory AMW
+::FileLRUCache bdph File based persistent LRU cache SNOWHARE
+::Handle RdpO Base class for implementing tied filehandles STBEY
+::HashDefaults adpr Let a hash have default values JDPORTER
+::IxHash RdpO Indexed hash (ordered array/hash composite) GSAR
+::LLHash Rdpr Fast ordered hashes via linked lists KWILLIAMS
+::ListKeyedHash Rdpr Use lists to key multi-level hashes SNOWHARE
+::Mem adcO Bind perl variables to memory addresses PMQS
+::MmapArray bdcr Ties a file to an array ANDREWF
+::Multidim adpr "tie"-like multidimensional data structures JDPORTER
+::OffsetArray adpr Tie one array to another, with index offset JDPORTER
+::Persistent Rdpr Persistent data structures via tie RGIERSIG
+::Quick i Simple way to create ties TIMB
+::RDBM RdpO Tie hashes to relational databases LDS
+::RndHash bdpO choose a random key of a hash in O(1) time DFAN
+::SecureHash RdpO Enforced encapsulation of Perl objects DCONWAY
+::SentientHash bdpr Tracks changes to nested data structures ANDREWF
+::ShadowHash adpO Merge multiple data sources into a hash RRA
+::ShiftSplice i Defines shift et al in terms of splice LWALL
+::SortHash Rdpr Provides persistent sorting for hashes CTWETEN
+::SubstrHash SdpO Very compact hash stored in a string LWALL
+::TextDir Rdpr ties a hash to a directory of textfiles KWILLIAMS
+::Watch bdpO Watch variables, run code when read/written LUSOL
+::Cycle RdpO Cycle through a list of values via a scalar. BDFOY
+
+Tie::Scalar::
+::Timeout adpr Scalar variables that time out MARCEL
+
+Tie::Cache::
+::LRU adpr A Least-Recently Used cache MSCHWERN
+
+Class::
+::Accessor bdpO Automated accessor generation MSCHWERN
+::DBI adpO Simple SQL-based object persistance MSCHWERN
+::Eroot RdpO Eternal Root - Object persistence DMR
+::Fields bdph Inspect the fields of a class MSCHWERN
+::MethodMaker bdpO Create generic methods FLUFFY
+::Multimethods Rdpf A multiple dispatch mechanism for Perl DCONWAY
+::Mutator bdpO Dynamic polymorphism implemented in Perl GMCCAR
+::NamedParms MdpO A named parameter accessor base class SNOWHARE
+::ParmList MdpO A named parameter list processor SNOWHARE
+::Singleton bdpO Implementation of a "Singleton" class ABW
+::Template Rdpr Struct/member template builder DMR
+::Translucent RdpO Translucent (ala perltootc) method creation GED
+::Tree MdpO C++ class hierarchies & disk directories RSAVAGE
+::TOM RmpO Transportable Object Model for perl JDUNCAN
+::Contract RdpO Design-by-Contract OO in Perl. DCONWAY
+::WhiteHole RdpO Treat unhandled method calls as errors MSCHWERN
+::BlackHole RdpO treat unhandled method calls as no-op SBURKE
+::Classless MdpO Framework for classless OOP SBURKE
+::ISA Mdpf Report the search path thru an ISA tree SBURKE
+
+Object::
+::Info Rupf General info about objects (is-a, ...) JACKS
+::Transaction bdpO Transactions on serialized HASH files MUIR
+
+POE:: Perl Object Environment
+::Kernel RdpO An event queue that dispatches events RCAPUTO
+::Session RdpO state machine running on POE::Kernel events RCAPUTO
+
+POE::Component::
+::RSS bdp? Event based RSS interface MSTEVENS
+::SubWrapper bdp? Event based Module interface MSTEVENS
+
+MOP bdp Meta Object Protocol (Tool collection) ORTALO
+Ref RdpO Print, compare, and copy perl structures MUIR
+SOOP RdpO Safe Object Oriented Programming GARROW
+
+Sort::
+::ByCompatMatrix idpO Sort objects by attribute compatibility ICKHABOD
+::Fields bdpf sort text lines by alpha or numeric fields JNH
+::PolySort bdpO general rules-based sorting of lists DMACKS
+::Versions Rdpf sorting of revision (and similar) numbers KJALB
+
+Data Type Marshaling (converting to/from strings) and Persistent Storage
+
+Clone idch Recursive copy of nested objects RDF
+FreezeThaw bdpf Convert arbitrary objects to/from strings ILYAZ
+Persistence::
+::Object adpO Store Object definitions with Data::Dumper VIPUL
+Storable Rdcr Persistent data structure mechanism RAM
+Marshal::
+::Dispatch cdpO Convert arbitrary objects to/from strings MUIR
+::Packed cdpO Run-length coded version of Marshal module MUIR
+::Eval cdpO Undo serialization with eval MUIR
+Tangram RmpO Object persistence in relational databases JLLEROY
+
+Persistent::
+::Base bdpO Persistent base classes (& DBM/File classes) DWINTERS
+::DBI bdpO Persistent abstract class for DBI databases DWINTERS
+::MySQL bdpO Persistent class for MySQL databases DWINTERS
+::Oracle bdpO Persistent class for Oracle databases DWINTERS
+::Sybase bdpO Persistent class for Sybase databases DWINTERS
+::mSQL bdpO Persistent class for mSQL databases DWINTERS
+::LDAP bdpO Persistent class for LDAP directories DWINTERS
+
+Data::
+::Check cdpO Checks values for various data formats KENHOLM
+::DRef adph Nested data access using delimited strings EVO
+::Dumper RdpO Convert data structure into perl code GSAR
+::Flow RdpO Acquire data based on recipes ILYAZ
+::Locations RdpO Insert data into other data w/o temp files STBEY
+::Reporter RdcO Ascii Report Generator RVAZ
+::Walker RdpO Navigate through Perl data structures JNOLAN
+::Random adpf Generate random sets of data ADEO
+::JavaScript RdpO Dumps structures into JavaScript code SCHOP
+
+Tree::
+::Base cdpO Defines a basic binary search tree MSCHWERN
+::Fat Rdcf Embeddable F-Tree algorithm suite JPRIT
+::Smart cdpO Splay tree, fastest for commonly accessed ke MSCHWERN
+::Ternary bdpO Perl implementation of ternary search trees MROGASKI
+::Ternary_XS adcO XS implementation of ternary search trees LBROCARD
+::Trie bdpO An implementation of the Trie data structure AVIF
+::Nary RdpO Perl implementation of N-ary search trees FSORIANO
+::DAG_Node MdpO base class for trees SBURKE
+
+DFA::
+::Command MdpO Discrete Finite Automata command processor RSAVAGE
+::Kleene R Kleene's Algorithm for DFA STBEY
+::Simple cdpO An "augmented transition network" RANDYM
+
+Boulder MdpO Generalized tag/value data objects LDS
+Thesaurus RdpO Create associations between related things DROLSKY
+
+7) Database Interfaces (see also Data Types)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+DBI amcO Generic Database Interface (see DBD modules) DBIML
+
+DBIx -- Extensions to the DBI
+
+DBIx::
+::Abstract RmpO Wrapper for DBI that generates SQL TURNERA
+::AnyDBD bdpO Module to make cross db applications easier MSERGEANT
+::CGITables adpO Easy DB access from a CGI TOBIX
+::Copy adpO Copying databases TOBIX
+::FullTextSearch bdpO Index documents with MySQL as storage TJMATHER
+::glueHTML bdpO CGI interface to DBI databases JFURNESS
+::HTMLView cdpO Creating web userinterfaces to DBI dbs HAKANARDO
+::OracleSequence adpO OO access to Oracle sequences via DBD-Oracle BLABES
+::Password MdpO Abstration layer for database passwords KROW
+::Recordset bmpO DB-Abtractionlayer / Access via Arrays/Hashs GRICHTER
+::Table bdpO OO access to DBI database tables DLOWE
+::TableAdapter adpO An object-relational mapper for DBI tables GED
+::Tree adpO Expand self-referential table into a tree BJEPS
+::XML_RDB ???? Creates XML from DBI datasources MSERGEANT
+::DBSchema bmpO Database-independent schema objects IVAN
+
+DBD::
+::ASAny adcO Adaptive Server Anywhere Driver for DBI SMIRNIOS
+::Altera bdpO Altera SQL Server for DBI - pure Perl code DSOUFLIS
+::CSV adcO SQL engine and DBI driver for CSV files JWIED
+::DB2 adcO DB2 Driver for DBI MHM
+::Empress adcO Empress RDBMS Driver SWILLIAM
+::FreeTDS adcO DBI driver for MS SQLServer and Sybase SPANNRING
+::SearchServer cdcO PCDOCS/Fulcrum SearchServer Driver for DB SHARI
+::Illustra bmcO Illustra Driver for DBI PMH
+::Informix amcO Informix Driver for DBI JOHNL
+::Informix4 adcO DBI driver for Informix SE 4.10 GTHYNI
+::Ingres bmcO Ingres Driver for DBI HTOUG
+::Multiplex a Spreading database load acrross servers TIMB
+::ODBC amcO ODBC Driver for DBI DBIML
+::Oracle MmcO Oracle Driver for DBI TIMB
+::QBase amcO QBase Driver for DBI BENLI
+::RAM bmpO a DBI driver for files and data structures JZUCKER
+::SQLrelay bdpO SQLrelay driver for DBI DMOW
+::Solid amcO Solid Driver for DBI TWENRICH
+::Sqlflex RdcO SQLFLEX driver for DBI INFOFLEX
+::Sybase bmcO Sybase Driver for DBI MEWP
+::Unify bdcO Unify driver for DBI HMBRAND
+::XBase bmpO XBase driver for DBI JANPAZ
+::mSQL RmcO Msql Driver for DBI JWIED
+::mysql RmcO Mysql Driver for DBI JWIED
+::pNET amcO DBD proxy driver JWIED
+::InterBase amcO DBI driver for InterBase RDBMS server EDPRATOMO
+
+Oraperl Rmpf Oraperl emulation interface for DBD::Oracle DBIML
+Ingperl bmpf Ingperl emulation interface for DBD::Ingres HTOUG
+
+DDL::
+::Oracle bdpO Reverse engineers object DDL; also defrags RVSUTHERL
+
+MSSQL::
+::DBlib Md+O Access MS SQL Server through DB-Library. SOMMAR
+::Sqllib MdpO High-level interface using MSSQL::DBlib. SOMMAR
+
+Sybase::
+::Async cdpO interact with a Sybase asynchronously WORENKD
+::BCP RdcO Sybase BCP interface MEWP
+::DBlib RdcO Sybase DBlibrary interface MEWP
+::Simple bdpO Simplified db access using Sybase::CTlib MEWP
+::Sybperl Rdpf sybperl 1.0xx compatibility module MEWP
+::CTlib RdcO Sybase CTlibrary interface MEWP
+
+Ace i Interface to ACEDB (Popular Genome DB) LDS
+BBDB Rdph Insiduous big brother database LAXEN
+DTREE cdcf Interface to Faircom DTREE multikey ISAM db JWAT
+Datascope Rdcf Interface to Datascope RDBMS DANMQ
+Fame adcO Interface to FAME database and language TRIAS
+LotusNotes i Interface to Lotus Notes C/C++ API MBRECH
+Msql RmcO Mini-SQL database interface JWIED
+Mysql RmcO mysql database interface JWIED
+NetCDF bmcr Interface to netCDF API for scientific data SEMM
+ObjStore Rm+O ObjectStore OODBMS Interface JPRIT
+Pg Rdcf PostgreSQL SQL database interface MERGL
+PgSQL adpO "Pure perl" interface to PostgreSQL GTHYNI
+Pogo ad+O Interface for GOODS object database SEYN
+Postgres RncO PostgreSQL interface with Perl5 coding style VKHERA
+Sprite RdpO Limited SQL interface to flat file databases SHGUN
+Stanza i Text format database used by OSF and IBM JHI
+VDBM cdph Client/server-layers on top of DBM files RAM
+WAIT adhO A rewrite of the freeWAIS-sf engine in Perl ULPFR
+Wais Rdcf Interface to the freeWAIS-sf libraries ULPFR
+XBase RdpO Read/write interface to XBase files JANPAZ
+Xbase bdpf Read Xbase files with simple IDX indexes PRATP
+
+Tied Hash File Interfaces:
+
+AnyDBM_File Sup Uses first available *_File module above P5P
+BerkeleyDB RdcO Interface to Berkeley DB 2 & 3 PMQS
+CDB_File adc Tie to CDB (Bernstein's constant DB) files TIMPX
+DBZ_File adc Tie to dbz files (mainly for news history) IANPX
+DWH_File adpO DBM storage of complex data and objects SUMUS
+DB_File Suc Tie to DB files PMQS
+GDBM_File Suc Tie to GDBM files P5P
+NDBM_File Suc Tie to NDBM files P5P
+ODBM_File Suc Tie to ODBM files P5P
+SDBM_File Suc Tie to SDBM files P5P
+
+MLDBM RdpO Transparently store multi-level data in DBM GSAR
+MLDBM::
+::Sync cdpr MLDBM wrapper to serialize concurrent access CHAMAS
+
+DB_File::
+::Lock RdpO DB_File wrapper with flock-based locking DHARRIS
+
+DBM::
+::DBass adpf DBM with hashes, locking and XML records SPIDERBOY
+
+AsciiDB::
+::Parse i Generic text database parsing MICB
+::TagFile adpO Tie class for a simple ASCII database JOSERODR
+
+Db::
+::Ctree Rdcr Faircom's CTREE+ database interface REDEN
+::Documentum Rdcf Documentum EDMS Perl client interface MSROTH
+::dmObject cdpO Object-based interface to Documentum EDMS JGARRISON
+::DFC adpO OO Interface to Documentum's DFC MSROTH
+
+DbFramework::
+::Attribute adpO Relational attribute class PSHARPE
+::DataModel adpO Relational data model/schema class PSHARPE
+::DataType adpO Attribute data type class PSHARPE
+::ForeignKey adpO Relational foreign key class PSHARPE
+::Key adpO Relational key class PSHARPE
+::Persistent adpO Persistent object class PSHARPE
+::PrimaryKey adpO Relational primary key class PSHARPE
+::Table adpO Relational table/entity class PSHARPE
+::Util adhO Utility functions/methods PSHARPE
+
+BTRIEVE::
+::SAVE bdpO Read-write access to BTRIEVE SAVE files DLANE
+
+MARC bmpO MAchine Readable Catalog (library bib. data) PERL4LIB
+MARC::
+::XML ampO MAchine Readable Catalog / XML Extension PERL4LIB
+
+Metadata::
+::Base bdpO Base metadata functionality DJBECKETT
+::IAFA bdpO IAFA templates metadata DJBECKETT
+::SOIF bdpO Harvest SOIF metadata DJBECKETT
+
+OLE::
+::PropertySet aupO Property Set interface MSCHWARTZ
+::Storage aupO Structured Storage / OLE document interface MSCHWARTZ
+::Storage_Lite adpO Simple Class for OLE document interface KWITKNR
+
+Spectrum::
+::CLI RdpO API for Spectrum Enterprise Mgr. CLI PLONKA
+
+Spreadsheet::
+::Excel i Interface to Excel spreadsheets RRAWLINGS
+::Lotus i Interface to Lotus 1-2-3 spreadsheets RRAWLINGS
+::WriteExcel bupO Write numbers & text in Excel binary format JMCNAMARA
+::ParseExcel RdpO Get information from Excel file KWITKNR
+
+X500::
+::DN MdpO X500 Distinguished Name parser RSAVAGE
+
+8) User Interfaces (Character and Graphical)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Term::
+::ANSIColor Sdpf Color output using ANSI escape sequences RRA
+::Cap Supf Basic termcap: Tgetent, Tputs, Tgoto TSANDERS
+::Complete Supf Tab word completion using stty raw WTOMPSON
+::Control idpf Basic curses-type screen controls (gotxy) KJALB
+::Gnuplot adcf Draw vector graphics on terminals etc ILYAZ
+::Info adpf Terminfo interface (currently just Tput) KJALB
+::ProgressBar idpf Progress bar in just ASCII EDAVIS
+::Prompt adpf Prompt a user ALLENS
+::Query Rdpf Intelligent user prompt/response driver AKSTE
+::ReadKey Rdcf Read keystrokes and change terminal modes KJALB
+::ReadLine Sdcf Common interface for various implementations ILYAZ
+::Scraper cdpO Drive and scrape terminal applications INGY
+::Screen RdpO Basic screen + input class (uses Term::Cap) MRKAE
+::Size adcf Simple way to get terminal size TIMPX
+::TUI bdpf User interface based on Term::ReadLine SBECK
+
+Term::ReadLine::
+::Perl RdpO GNU Readline history and completion in Perl ILYAZ
+::Gnu RdcO GNU Readline XS library wrapper HAYASHI
+
+Major Character User Interface Modules:
+
+Cdk RdcO Collection of Curses widgets GLOVER
+Curses adcO Character screen handling and windowing WPS
+Dialog bdch interface library to libdialog UNCLE
+PV bdpO Text-mode User Interface Widgets AGUL
+PerlMenu Mdpf Curses-based menu and template system SKUNZ
+
+Curses::
+::Forms adpO Form management for Curses::Widgets CORLISS
+::Widgets Rdpf Assorted widgets for rapid interfaces CORLISS
+
+Emacs adpf Support for Perl embedded in GNU Emacs JTOBEY
+Emacs::
+::Lisp bdch Perl-to-Emacs-Lisp glue JTOBEY
+
+Tk X Windows User Interface Modules
+
+Tk bmcO Object oriented version of Tk v4 TKML
+
+Tk::
+::TextANSIColor bdpO use ANSI color codes in Text widget TJENNESS
+::Autoscroll cdpf Alternative way to scroll SREZIC
+::Axis RmpO Canvas with Axes TKML
+::CheckBox RdpO A radio button widget that uses a checkmark DKWILSON
+::ChildNotification RdpO Alert widget when child is created DKWILSON
+::Clock RdpO Canvas based Clock widget HMBRAND
+::Cloth RdpO Object interface to Tk::Canvas and items ACH
+::Columns RdpO Multi column lists w/ resizable borders DKWILSON
+::ComboEntry RdpO Drop down list + entry widget DKWILSON
+::ContextHelp cdpO A context-sensitive help system SREZIC
+::Dial RmpO An alternative to the Scale widget TKML
+::Date cdpO A date/time widget SREZIC
+::Enscript cdpf Create postscript from text files using Tk SREZIC
+::FcyEntry adpO Entry with bg color depending on -state ACH
+::FileDialog RdpO A highly configurable file selection widget BPOWERS
+::FileEntry adpO Primitive clone of Tix FileEntry widget ACH
+::FireButton RdpO Keeps invoking callback when pressed ACH
+::FlatCheckbox cdpO A checkbox suitable for flat reliefs SREZIC
+::FontDialog cdpO A font dialog widget for perl/Tk SREZIC
+::Getopt adpO Configuration interface to Getopt::Long SREZIC
+::HistEntry cdpO An entry widget with history capability SREZIC
+::HTML bdpO View HTML in a Tk Text widget NI-S
+::IconCanvas RdpO Canvas with movable iconic interface DKWILSON
+::JPEG RdcO JPEG loader for Tk::Photo NI-S
+::LockDisplay RdpO Screen saver/lock widget with animation LUSOL
+::Login cdpO A Login widget (name, passwd, et al) BPOWERS
+::Menustrip RdpO Another MenuBar DKWILSON
+::More adpO A more (or less) like text widget ACH
+::Multi bdpO Manages several Text or Canvas widgets DDUMONT
+::NumEntry RdpO Numerical entry widget with up/down buttons ACH
+::ObjScanner bdpO A scanner to view an object's attribute DDUMONT
+::Olwm RmpO Interface to OpenLook toplevels properties TKML
+::Pane RdpO A Frame that can be scrolled TKML
+::PNG RdcO PNG loader for Tk::Photo NI-S
+::Pod ?mpO POD browser toplevel widget TKML
+::ProgressBar RdpO Status/progress bar TKML
+::ProgressMeter cdpO Simple thermometer-style widget w/callbacks BPOWERS
+::RotCanvas RdpO Canvas with arbitrary rotation support AQUMSIEH
+::SplitFrame RdpO A sliding separator for two child widgets DKWILSON
+::TabFrame RdpO A tabbed frame geometry manager DKWILSON
+::TabbedForm RdpO Ext. TabFrame, allowing managed subwidgets DKWILSON
+::TableEdit RdpO Simplified interface to a flat file database DKWILSON
+::TableMatrix bdcO Display data in Table/Spreadsheet format CERNEY
+::TiedListbox RmpO Gang together Listboxes TKML
+::TFrame RdpO A Frame with a title ACH
+::TIFF adpO TIFF loader for Tk::Photo SREZIC
+::Tree RdpO Create and manipulate Tree widgets CTDEAN
+::TreeGraph RdpO Widget to draw a tree in a Canvas DDUMONT
+::WaitBox RdpO A Wait dialog, of the "Please Wait" variety BPOWERS
+::XMLViewer adpO Tk widget to display XML SREZIC
+
+Modules in the realm of Tk but with a separate namespace
+
+Log::Dispatch::
+::ToTk RdpO Interface class between Log::Dispatch and Tk DDUMONT
+::TkText RdpO Text widget to log Log::Dispatch messages DDUMONT
+
+Puppet::
+::Body adpO Base class for persistent data DDUMONT
+::Log bdpO Logging facility based on Tk DDUMONT
+::Any adpO Base class for an optionnal GUI DDUMONT
+
+Puppet::VcsTools::
+::History bdpO VCS (RCS HMS) history viewer based on Canvas DDUMONT
+::File adpO VCS (RCS HMS) file manager DDUMONT
+
+Orac RdpO DBA GUI tool for Oracle, Informix and Sybase ANDYDUNC
+PPresenter MdpO Create presentations with Tk in Perl or XML MARKOV
+
+Other Major X Windows User Interface Modules:
+
+Gtk bdcO binding of the Gtk library used by GIMP KJALB
+
+Gtk::
+::Dialog adph Simple interface to create dialogs in Gtk ALISTAIRC
+
+Fresco cd+O Interface to Fresco (post X11R6 version) BPETH
+Glade adph Glade/Gtk+/Gnome UI source code generator DMUSGR
+Gnome bdcO Bindings to the Gnome Desktop Toolkit KJALB
+Qt ad+O Interface to the Qt toolkit AWIN
+Sx Rdcf Simple Athena widget interface FMC
+
+X11::
+::Auth adpO Read and handle X11 '.Xauthority' files SMCCAM
+::Fvwm RdcO interface to the FVWM window manager API RJRAY
+::Keysyms adpf X11 key symbols (translation of keysymdef.h) SMCCAM
+::Lib bdcO X11 library interface KENFOX
+::Motif bdcO Motif widget set interface KENFOX
+::Protocol adpO Raw interface to X Window System servers SMCCAM
+::Toolkit bdcO X11 Toolkit library interface KENFOX
+::Wcl bdcO Interface to the Widget Creation Library JHPB
+::XEvent bdcO provides perl OO acess to XEvent structures MARTINB
+::XFontStruct bdcO provides perl OO access to XFontStruct MARTINB
+::XRT adcO XRT widget set (commercial) interface KENFOX
+::Xbae adcO Xbae matrix (spreadsheet like) interface KENFOX
+::Xforms bdcO provides the binding to the xforms library MARTINB
+::Xpm adcf X Pixmap library interface KENFOX
+
+Abstract Graphical User Interfaces modules
+
+GUI::
+::Guido i bd+O Communicate with objects in a GUI TBRADFUTE
+
+9) Interfaces to or Emulations of Other Programming Languages
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Clips adpO Interface to the Expert System Clips MSULLIVAN
+Java RdoO A Perl front-end for JVM communication METZZO
+Rc cdcO Perl interface for the Rc shell JPRIT
+SICStus adcO Interface to SICStus Prolog Runtime CBAIL
+
+C::
+::DynaLib bdcO Allows direct calls to dynamic libraries JTOBEY
+::Scan RdpO Heuristic parse of C files ILYAZ
+
+Tcl RdcO Complete access to Tcl MICB
+::Tk RdcO Complete access to Tk *via Tcl* MICB
+
+Language::
+::Basic adpO Implementation of BASIC AKARGER
+::Prolog adpO An implementation of Prolog JACKS
+::PGForth i Peter Gallasch's Forth implementation PETERGAL
+
+Fortran::
+::NameList adpf Interface to FORTRAN NameList data SGEL
+
+ShellScript::
+::Env adpO Simple sh and csh script generator SVENH
+
+Verilog::
+::Pli Rdch Access to simulator functions WSNYDER
+::Language Rdpf Language support, number parsing, etc WSNYDER
+::Parser RdpO Language parsing WSNYDER
+::SigParser RdpO Signal and module extraction WSNYDER
+
+FFI cdcf Low-level Foreign Function Interface PMOORE
+
+FFI::
+::Library cdcO Access to functions in shared libraries PMOORE
+
+FFI::Win32::
+::Typelib idcO FFI taking definitions from a type library PMOORE
+::COM idcO Access to COM using VTBL interface PMOORE
+
+Python bmcf Interface Python API (for embedded python) GAAS
+Python::
+::Object bmcO Wrapper for python objects GAAS
+::Err bmcO Wrapper for python exceptions GAAS
+
+10) File Names, File Systems and File Locking (see also File Handles)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Cwd Supf Current working directory functions P5P
+
+File::
+::Attrib idpO Get/set file attributes (stat) TYEMQ
+::BSDGlob bdcf Secure, csh-compatible filename globbing GBACON
+::Backup bdpf Easy file backup & rotation automation KWILLIAMS
+::Basename Supf Return basename of a filename P5P
+::Cache adpO Share data between processes via filesystem DCLINTON
+::CheckTree Supf Check file/dir tree against a specification P5P
+::Compare Supf Compare file contents quickly P5P
+::Copy adpf Copying files or filehandles ASHER
+::CounterFile RdpO Persistent counter class GAAS
+::Df adpf Free disk space utilities (h2ph required) FTASSIN
+::Find Supf Call func for every item in a directory tree P5P
+::Flock Mdph flock() wrapper. Auto-create locks MUIR
+::Glob adpf Filename globing (ksh style) TYEMQ
+::LckPwdF adcf Lock and unlock the passwd file ALLENS
+::Listing Rdpf Parse directory listings GAAS
+::Lock adcf File locking using flock() and lockf() JHI
+::MultiTail adpO Tail multiple files SGMIANO
+::Path Supf File path and name utilities P5P
+::Remote Rdph Read/write/edit remote files transparently NWIGER
+::Rsync bdpO Copy efficiently over the net and locally LEAKIN
+::Signature cdpf Heuristics for file recognition JHI
+::Slurp Mdpf Read/write/append files quickly MUIR
+::Sort Rdpf Sort a file or merge sort multiple files CNANDOR
+::Spec bdpO Handling files and directories portably KJALB
+::Sync bdcf POSIX/*nix fsync() and sync() CEVANS
+::Tail bdpO A more efficient tail -f MGRABNAR
+::Temp adpf Create temporary files safely TJENNESS
+::chmod Mdpf Allows for symbolic chmod notation PINYAN
+::lockf bdcf Interface to lockf system call PHENSON
+::stat Supf A by-name interface for the stat function TOMC
+::BasicFlock Rdpf Simple flock() wrapper MUIR
+::Searcher bdpO Search filetree do search/replace regexes ASTUBBS
+
+File::Searcher::
+::Interactive bdpO Interactive search do search/replace regexes ASTUBBS
+
+Dir::
+::Purge Rdpf Delete files in directory based on timestamp JV
+
+Filesys::
+::AFS cdcO AFS Distributed File System interface NOG
+::Df Rdpr Disk free based on Filesys::Statvfs IGUTHRIE
+::DiskFree adpO OS independant parser of the df command ABARCLAY
+::Ext2 Rdpf Interface to e2fs filesystem attributes JPIERCE
+::SamFS adcf Interface to SamFS API LUPE
+::Statvfs Rdcf Interface to the statvfs() system call IGUTHRIE
+::dfent adpf By-name interface TOMC
+::mntent adpf By-name interface TOMC
+::statfs adpf By-name interface TOMC
+
+LockFile:: Application-level locking facilities
+::Lock adpO Lock handles created by LockFile::* schemes RAM
+::Manager adpO Records locks created by LockFile::* RAM
+::Scheme adpO Abstract superclass for locking modules RAM
+::Simple adpr Simple file locking mechanism RAM
+
+Stat::
+::lsMode Rdpf Translate mode 0644 to -rw-r--r-- MJD
+
+11) String Processing, Language Text Processing, Parsing and Searching
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+String::
+::Approx Rdpf Approximate string matching and substitution JHI
+::BitCount adpf Count number of "1" bits in strings WINKO
+::CRC Rdcf Cyclic redundency check generation MUIR
+::CRC32 R?c? ZMODEM-like CRC32 generation of strings as w SOENKE
+::DiffLine bdcf line # & position of first diff ALLEN
+::Edit adpf Assorted handy string editing functions TOMC
+::Parity adpf Parity (odd/even/mark/space) handling WINKO
+::RexxParse Rdph Perl implementation of REXX 'parse' command BLCKSMTH
+::Scanf Rdpf Implementation of C sscanf function JHI
+::ShellQuote Rdpf Quote string for safe passage through shells ROSCH
+::Strip Rdcf xs Module to remove white-space from strings BPOWERS
+::Random RdpO Perl module to generate random strings based STEVE
+::Similarity RdcO Calculate the similarity of two strings MLEHMANN
+
+Language text related modules
+
+Text::
+::Abbrev Supf Builds hash of all possible abbreviations P5P
+::Bastardize cdpO corrupts text in various ways AYRNIEU
+::Bib RdpO Module moved to Text::Refer ERYQ
+::BibTeX adcO Parse BibTeX files GWARD
+::CSV adpO Manipulate comma-separated value strings ALANCITT
+::CSV_XS adpO Fast 8bit clean version of Text::CSV JWIED
+::DelimMatch RdpO Match (possibly nested) delimited strings NWALSH
+::FillIn RdpO Fill-in text templates KWILLIAMS
+::Format RdpO Advanced paragraph formatting GABOR
+::Graphics RdpO Graphics rendering toolkit with text output SFARRELL
+::Iconv RdcO Perl interface to the XPG4 iconv() function MPIOTR
+::Invert cdpO Create/query inv. index of text entities NNEUL
+::Macros adpO template macro expander (OO) JDPORTER
+::Metaphone bdcf A modern soundex. Phonetic encoding of words MSCHWERN
+::MetaText bdpO Text processing/markup meta-language ABW
+::Morse cdpf convert text to/from Morse code JONO
+::ParseWords Supf Parse strings containing shell-style quoting HALPOM
+::Refer RdpO Parse refer(1)-style bibliography files ERYQ
+::SimpleTemplate adpO Template for dynamic text generation TAIY
+::Soundex Sdhf Convert a string to a soundex value MARKM
+::Tabs Sdpf Expand and contract tabs ala expand(1) MUIR
+::TeX cdpO TeX typesetting language input parser ILYAZ
+::Templar RdpO An object-oriented templating system GED
+::Template MdpO Expand template text with embedded perl MJD
+::TreeFile bdpO Reads tree of strings into a data structure JNK
+::Vpp RdpO Versatile text pre-processor DDUMONT
+::Wrap Sdpf Wraps lines to make simple paragraphs MUIR
+::iPerl adpf Bring text-docs to life via embedded Perl PFEIFFER
+::DoubleMetaphone adcf Convert string to phonetic encoding MAURICE
+::FastTemplate bdpO Perl subs from line-oriented templates BOZZIO
+
+Text::Wrap::
+::Hyphenate a Like Text::Wrap with ability to hyphenate MJD
+
+Other Text:: modules (these should be under String:: but pre-date it)
+
+Text::
+::Balanced Mdpf Extract balanced-delimiter substrings DCONWAY
+::Banner adpf Resembles UNIX banner command LORY
+::Merge i??? Methods for text templating and data merging SHARRIS
+::Parser adpO String parser using patterns and states PATM
+::Trie adpf Find common heads and tails from strings ILYAZ
+
+Stemming algorithms
+
+Text::
+::English adpf English language stemming IANPX
+::German adpf German language stemming ULPFR
+::Stem bdpf Porter algorithm for stemming English words IANPX
+
+Natural Languages
+
+Lingua::
+::DetectCharset a Heuristics to detect coded character sets JNEYSTADT
+::Ident RdpO Statistical language identification MPIOTR
+::Ispell adpf Interface to the Ispell spellchecker JDPORTER
+::Stem Rdph Word stemmer with localization SNOWHARE
+
+Specific Natural Languages
+
+Lingua::
+::EN i Namespace for English language modules
+::PT bupf Namespace for Portugese language modules EGROSS
+
+Lingua::EN::
+::AddressParse bdpO Manipulate geographical addresses KIMRYAN
+::Cardinal i Convert numbers to words HIGHTOWE
+::Fathom RdpO Readability measurements of English text KIMRYAN
+::Hyphenate Rdpf Syllable based hyphenation DCONWAY
+::Infinitive MdpO Find infinitive of a conjugated word RSAVAGE
+::Inflect Mdpf English singular->plural and "a"->"an" DCONWAY
+::MatchNames bdpf Smart matching for human names BRIANL
+::NameCase Rdpf Convert NAMES and names to Correct Case SUMMER
+::NameParse RdpO Manipulate persons name KIMRYAN
+::Nickname bdpf Genealogical nickname matching(Peggy=Midge) BRIANL
+::Ordinal i Convert numbers to words HIGHTOWE
+::Squeeze bdpf Shorten english text for Pagers/GSM phones JARIAALTO
+::Syllable a Estimate syllable count in words GREGFAST
+
+Lingua::EN::Numbers::
+::Ordinate Rdpf go from cardinal (53) to ordinal (53rd) SBURKE
+
+Lingua::RU::
+::Charset anpf Detect/Convert russian character sets. FARBER
+
+ERG Rdpf An extensible report generator framework PHOENIXL
+
+PostScript::
+::Barcode bdpf Various types of barcodes as PostScript COLEMAN
+::Basic bdpO Basic methods for postscript generation STWIGGER
+::Document bdpO Generate multi-page PostScript SHAWNPW
+::Elements bdpO Objects for shapes, lines, images SHAWNPW
+::Font RdpO analyzes PostScript font files JV
+::FontInfo RdpO analyzes Windows font info files JV
+::FontMetrics RdpO analyzes Adobe Font Metric files JV
+::Metrics bdpO Font metrics data used by PS::TextBlock SHAWNPW
+::Resources RdpO loads Unix PostScript Resources file JV
+::TextBlock bdpO Objects used by PS::Document SHAWNPW
+
+Font::
+::AFM RdpO Parse Adobe Font Metric files GAAS
+::TFM RdpO Read info from TeX font metric files JANPAZ
+::TTF bdpO TrueType font manipulation module MHOSKEN
+::Fret RdpO Fret - Font REporting Tool MHOSKEN
+
+Number::
+::Format RdpO Package for formatting numbers for display WRW
+
+Number::Phone::
+::US Rdpf Validates several US phone number formats KENNEDYH
+
+Email::
+::Find adpf Find RFC 822 email addresses in plain text MSCHWERN
+
+Parse::
+::ePerl Rdcr Embedded Perl (ePerl) parser RSE
+::Lex adpO Generator of lexical analysers PVERD
+::RecDescent MdpO Recursive descent parser generator DCONWAY
+::Tokens bdpO Base class for parsing tokens from text MCKAY
+::Yapp RdpO Generates OO LALR parser modules FDESAR
+::YALALR RdpO Yet Another LALR parser SFINK
+::Vipar bdpO Visual LALR parser debugger SFINK
+
+Search::
+::Dict Supf Search a dictionary ordered text file P5P
+::InvertedIndex RdpO Inverted index database support SNOWHARE
+::Binary Rdpf Generic binary search RANT
+
+SGML::
+::Element cdpO Build a SGML element structure tree LSTAF
+::Parser RdpO SGML instance parser EHOOD
+::SPGrove bd+O Load SGML, XML, and HTML files KMACLEOD
+::Entity RdpO An entity defined in an SGML or XML document KMACLEOD
+
+SGMLS RdpO A Post-Processor for SGMLS and NSGMLS INGOMACH
+
+XML RmhO Large collection of XML related modules XMLML
+
+XML::
+::AutoWriter RdpO DOCTYPE based XML output RBS
+::CSV i?cO Transform comma separated values to XML ISTERIN
+::Catalog RdpO Resolve public identifiers and remap system EBOHLMAN
+::DOM bmpO Implements Level 1 of W3's DOM ENNO
+::Doctype RdpO A DTD object class RBS
+::Dumper ampO Converts XML from/to Perl code EISEN
+::Edifact ???? Scripts for translating EDIFACT into XML KRAEHE
+::Element RdpO XML elements with the same interface as HTML SBURKE
+::Encoding ???? Parses encoding map XML files COOPERCL
+::Generator bdpO Generates XML documents BHOLZMAN
+::Grove RmpO Flexible lightweight mid-level XML objects KMACLEOD
+::PPD RdpO PPD file format and XML parsing elements MURRAY
+::PYX RdpO XML to PYX generator MSERGEANT
+::Parser bmcO Flexible fast parser with plug-in styles COOPERCL
+::QL ???? Implements the XML Query Language MSERGEANT
+::Registry ampO Implements a generic XML registry EISEN
+::Sablotron RdcO Interface to the Sablotron XSLT processor PAVELH
+::TreeBuilder RdpO Build a tree of XML::Element objects SBURKE
+::Writer ???? Module for writing XML documents DMEGG
+::XPath RdpO A set of modules for parsing and evaluating MSERGEANT
+::XQL ampO Performs XQL queries on XML object trees ENNO
+::XSLT RdcO Process XSL Transformational sheets BRONG
+::miniXQL ???? Simplistic XQL-like search using streams MSERGEANT
+
+Frontier::
+::RPC ???? Performs Remote Procedure Calls using XML KMACLEOD
+
+RDF::
+::Service ampO RDF API with DBI and other backends JONAS
+
+RTF::
+::Base i Classes for Microsoft Rich Text Format NI-S
+::Document a pO Generate Rich Text (RTF) Files RRWO
+::Generator idpO Next Generation of RTF::Document RRWO
+::Group adpO Base class for manipulating Rich Text Format RRWO
+::Parser a Base class for parsing RTF files PVERD
+
+SQL::
+::Schema bdpO Convert a data dictionary to SQL statements TODD
+::Statement adcO Small SQL parser and engine JWIED
+::Builder adpO OO interface for creating SQL statements ZENIN
+
+TeX::
+::DVI RdpO Methods for writing DVI (DeVice Independent) JANPAZ
+::Hyphen RdpO Hyphenate words using TeX's patterns JANPAZ
+
+FrameMaker cdpO Top level FrameMaker interface PEASE
+FrameMaker::
+::FDK idcO Interface to Adobe FDK PEASE
+::MIF cdpO Parse and Manipulate FrameMaker MIF files PEASE
+::Control cdpO Control a FrameMaker session PEASE
+
+Marpa cd+O Context Free Parser JKEGL
+
+Chatbot::
+::Eliza RdpO Eliza algorithm encapsulated in an object JNOLAN
+
+Quiz::
+::Question cdpO Questions and Answers wrapper RFOLEY
+
+Template RdpO Extensive Toolkit for template processing ABW
+dTemplate bmpO Flexible templating system DLUX
+
+Barcode::
+::Code128 adpO Generate CODE 128 bar codes WRW
+
+12) Option, Argument, Parameter and Configuration File Processing
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Getopt::
+::ArgvFile Rdpf Take options from files JSTENZEL
+::Declare MdpO An easy-to-use WYSIWYG command-line parser DCONWAY
+::EvaP Mdpr Long/short options, multilevel help LUSOL
+::Gnu adcf GNU form of long option handling WSCOT
+::Help bdpf Yet another getopt, has help and defaults IANPX
+::Long Sdpr Advanced handling of command line options JV
+::Mixed Rdpf Supports both long and short options CJM
+::Regex ad Option handling using regular expressions JARW
+::Simple MdpO A simple-to-use interface to Getopt::Long RSAVAGE
+::Std Supf Implements basic getopt and getopts P5P
+::Tabular adpr Table-driven argument parsing with help text GWARD
+::Tiny adpr Table of references interface, auto usage() MUIR
+
+Getargs::
+::Long cdpf Parses long function args f(-arg => value) RAM
+
+Argv bdph Provide an OO interface to an ARGV DSB
+ConfigReader cdpO Read directives from configuration file AMW
+Resources bdpf Application defaults management in Perl FRANCOC
+
+App:: General application development tools
+::Config bdpO Configuration file mgmt ABW
+::Manager adch Installing/Managing/Uninstalling Software MLEHMANN
+
+Config::
+::FreeForm bdpf Provide in-memory configuration data BTROTT
+::IniFiles Read/Write INI-Style configuration files RBOW
+
+CfgTie adph Framework for tieing system admin tasks RANDYM
+
+13) Internationalization and Locale
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+I18N::
+::Charset Rdpf Character set names and aliases MTHURN
+::Collate Sdpr Locale based comparisons JHI
+::LangTags Mdpf compare & extract language tags (RFC1766) SBURKE
+::WideMulti i Wide and multibyte character string JHI
+
+Locale::
+::Country Rdpf ISO 3166 two letter country codes NEILB
+::Date adpf Month/weekday names in various languages JHI
+::Langinfo cdcf The <langinfo.h> API JHI
+::Language Rdpf ISO 639 two letter language codes NEILB
+::Msgcat RdcO Access to XPG4 message catalog functions CHRWOLF
+::PGetText bdpf What GNU gettext does, written in pure perl MSHOYHER
+::SubCountry RdpO ISO 3166-2 two letter subcountry codes KIMRYAN
+::gettext Rdcf Multilanguage messages PVANDRY
+::Maketext RdpO Framework for software localization SBURKE
+::PO RdpO Manipulate .po entries from gettext ALANSZ
+
+Unicode::
+::String RdcO String manipulation for Unicode strings GAAS
+::Map8 RdcO Convert between most 8bit encodings GAAS
+::Normal i??? Composition, canonical ordering, blocks MHOSKEN
+::MapUTF8 Rdpf Conversions to and from arbitrary charsets SNOWHARE
+
+No::
+::Dato Rdpf Norwegian stuff GAAS
+::KontoNr Rdpf Norwegian stuff GAAS
+::PersonNr Rdpf Norwegian stuff GAAS
+::Sort Rdpf Norwegian stuff GAAS
+::Telenor Rdpf Norwegian stuff GAAS
+
+Cz::
+::Cstocs RdpO Charset reencoding JANPAZ
+::Sort RdpO Czech sorting JANPAZ
+::Speak bdpf number, etc. convertor to the Czech language YENYA
+
+Geography::
+::States Rdp? Map states and provinces to their codes ABIGAIL
+
+Sort::
+::ArbBiLex Mdpf sort functions for arbitrary sort orders SBURKE
+
+14) Authentication, Security and Encryption (see also Networking)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+User::
+::Utmp Rdcf Perl access to UNIX utmp(x)-style databases MPIOTR
+::pwent adpf A by-name interface to password database TOMC
+::grent adpf A by-name interface to groups database TOMC
+::utent cdcO Interface to utmp/utmpx/wtmp/wtmpx database ROSCH
+
+PGP adpO Simple interface to PGP subprocess via pipes PGPML
+PGP::
+::Sign bdpr Create/verify PGP/GnuPG signatures, securely RRA
+
+GnuPG bdpO Perl interface to the GNU privacy guard. FRAJULAC
+GnuPG::
+::Interface RdpO OO interface to GNU Privacy Guard FTOBIN
+
+DES adcf DES encryption (libdes) EAYNG
+Des adcf DES encryption (libdes) MICB
+GSS adcO Generic Security Services API (RFC 2078) MSHLD
+OpenCA RmpO Tools for running a Certification Authority MADWOLF
+SMIMEUtil amhf Sign, encrypt, verify, decrypt S/MIME mail SAMPO
+
+Digest::
+::MD5 Rdch MD5 message digest algorithm GAAS
+::MD2 Rdch MD2 message digest algorithm GAAS
+::SHA1 cdch NIST SHA message digest algorithm UWEH
+::HMAC Rdph HMAC message integrity check GAAS
+
+Crypt::
+::Beowulf Rdpf An original, very fast encryption algorithm SIFUKURT
+::Blowfish RdhO XS-based implementation of Blowfish DPARIS
+::Blowfish_PP adpO Blowfish encryption algorithm in Pure Perl MATTBM
+::CBC adpO Cipherblock chaining for Crypt::DES/IDEA LDS
+::CBCeasy bdpf Easy things make really easy with Crypt::CBC MBLAZ
+::DES a DES encryption (libdes) GARY
+::ElGamal bdpO ElGamal digital signatures and keys VIPUL
+::IDEA a International Data Encryption Algorithm GARY
+::Keys adpO Management system for cryptographic keys VIPUL
+::OTP Rdpf Implements One Time Pad encryption SIFUKURT
+::Passwd Mdhf Perl wrapper around the UFC Crypt LUISMUNOZ
+::PasswdMD5 Mdhf Interoperable MD5-based crypt() function LUISMUNOZ
+::PRSG a 160 bit LFSR for pseudo random sequences GARY
+::RC4 Rdpf Implements the RC4 encryption algorithm SIFUKURT
+::Random bdpO Cryptographically Strong Random Numbers VIPUL
+::Rot13 cdpO simple encryption often seen on usenet AYRNIEU
+::RSA bdpO RSA encryption, decryption, key generation VIPUL
+::Solitaire Rdpf A very simple encryption system SIFUKURT
+::Twofish Rdpf Twofish Encryption Algorothm NISHANT
+::UnixCrypt Rdpf Perl-only implementation of crypt(3) MVORL
+::RandPasswd RdpO Random password generator based on FIPS-181 JDPORTER
+::Rijndael bdch AES/Rijndael Encryption Module DIDO
+::TripleDES RdpO Triple DES encyption. VIPUL
+::PGP5 bdpO An Object Oriented Interface to PGP5. AGUL
+::PGP6 cdpO An Object Oriented Interface to PGP6. AGUL
+::PGP cdpO Unified OO Interface to PGP and GnuPG AGUL
+::GPG bdpO An Object Oriented Interface to GnuPG AGUL
+::ECB Mdph ECB mode for Crypt::DES, Blowfish, etc. APPEL
+::CipherSaber bdpO OO module for CS-1 and CS-2 encryption CHROMATIC
+
+Authen::
+::ACE adcO Interface to Security Dynamics ACE (SecurID) DCARRIGAN
+::Krb4 RdcO Interface to Kerberos 4 API JHORWITZ
+::Krb5 RdcO Interface to Kerberos 5 API JHORWITZ
+::PAM bdch Interface to PAM library NIKIP
+::TacacsPlus adcO Authentication on tacacs+ server MSHOYHER
+::Ticket adpO Suite consisting of master/client/tools JSMITH
+
+RADIUS::
+::Dictionary bdpO Object interface to RADIUS dictionaries CHRMASTO
+::Packet bdpO Object interface to RADIUS (rfc2138) packets CHRMASTO
+::UserFile bdpO Manipulate a RADIUS users file OEVANS
+
+SSLeay cdcO Interface to SSLeay EAYNG
+
+15) World Wide Web, HTML, HTTP, CGI, MIME etc (see Text Processing)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+URI::
+::Attr ampO Stores attributes in the URI name space LWWWP
+::Bookmark bdpO A Class for bookmarks ASPIERS
+::Bookmarks bdpO A Class for bookmark collections ASPIERS
+::Escape Rmpf General URI escaping/unescaping functions LWWWP
+::Find adpf Find URIs in plain text MSCHWERN
+::URL RmpO Uniform Resource Locator objects LWWWP
+
+CGI::
+::Application RmpO Framework for building reusable web-apps JERLBAUM
+::ArgChecker bdpO Consistent, extensible CGI param validation DLOWE
+::Authent Mdpf request the HTTP authentification JENDA
+::Base RmpO Complete HTTPD CGI Interface class CGIP
+::BasePlus RmpO Extra CGI::Base methods (incl file-upload) CGIP
+::CList bdpO Manages hierarchical collapsible lists PEARCEC
+::Cache adpf Speed up slow CGI scripts by caching BROCSEIB
+::Carp cmpf Drop-in Carp replacement for CGI scripts CGIP
+::Debug Mdph show CGI debugging data JONAS
+::Deurl Mdpr decode the CGI parameters JENDA
+::Enurl Mdpr encode the CGI parameters JENDA
+::Formalware MdpO Convert an XML file to a suite of CGI forms RSAVAGE
+::Imagemap Rdph Imagemap handling for specialized apps MIKEH
+::LogCarp Rdph Error, log, bug streams, httpd style format MIKEKING
+::MiniSvr RmpO Fork CGI app as a per-session mini server CGIP
+::Minimal MdpO A micro-sized CGI handler SNOWHARE
+::MxScreen cdpO Screen multi-plexer framework RAM
+::Out adpf Buffer CGI output and report errors MUIR
+::PathInfo RdpO A lightweight PATH_INFO based CGI package SNOWHARE
+::Persistent adpO Transparent State Persistence in CGI scripts VIPUL
+::Query adpO Parse CGI quiry strings MPECK
+::QuickForm Rdpf Handles UI & validation for CGI forms SUMMER
+::Request RmpO Parse CGI request and handle form fields CGIP
+::Response ampO Response construction for CGI applications MGH
+::Screen adpO Create multi screen CGI-scripts ULPFR
+::Session cdpO Persistent storage of complex data in CGI ZED
+::SpeedyCGI bdcn Run CGI scripts persistenly HORROCKS
+::Validate adpO Advanced CGI form parser ZENIN
+::WML RdpO Subclass of CGI.pm for WML output AWOOD
+::XML ampO Convert CGI.pm variables to/from XML EISEN
+::XMLForm adpO Create/query XML for forms MSERGEANT
+
+HTML::
+::Base adpO Object-oriented way to build pages of HTML GAND
+::CalendarMonth RmpO Calendar Months as easy HTML::Element trees MSISK
+::Demoroniser adpO Correct moronic and incompatible HTML JDPORTER
+::EP adpO Modular, extensible Perl embedding JWIED
+::Element RdpO Representation of a HTML parsing tree SBURKE
+::ElementGlob RmpO Manipulate multiple HTML elements as one MSISK
+::ElementRaw RmpO Graft HTML strings onto an HTML::Element MSISK
+::ElementSuper RmpO Various HTML::Element extensions MSISK
+::ElementTable RmpO Tables as easy HTML element structures MSISK
+::Embperl Rmcf Embed Perl in HTML GRICHTER
+::Entities Rmpf Encode/decode HTML entities LWWWP
+::FillInForm adpO Fill in HTML forms, separating HTML and code TJMATHER
+::Formatter ampO Convert HTML to plain text or Postscript LWWWP
+::HeadParser RmpO Parse <HEAD> section of HTML documents LWWWP
+::LinkExtor RmpO Extract links from HTML documents LWWWP
+::Mason bdpO Build sites from modular Perl/HTML blocks JSWARTZ
+::ParseForm i Parse and handle HTML forms via templates NMONNET
+::Parser RmcO Basic HTML Parser LWWWP
+::QuickCheck cdpf Fast simple validation of HMTL text YLU
+::Simple bdpf Simple functions for generating HTML TOMC
+::SimpleParse RdpO Bare-bones HTML parser KWILLIAMS
+::StickyForms adpO HTML form generation for mod_perl/CGI PMH
+::Stream RdpO HTML output stream ERYQ
+::Subtext adpO Text substitutions on an HTML template KAELIN
+::Table RupO Write HTML tables via spreadsheet metaphor AJPEACOCK
+::TableExtract RmpO Flexible HTML table extraction MSISK
+::TableLayout bdpO an extensible OO layout manager PERSICOM
+::Template MmpO a simple HTML templating system SAMTREGAR
+::TokeParser RmpO Alternative HTML::Parser interface LWWWP
+::Validator bdpO HTML validator utilizing nsgmls and libwww SAIT
+::Tagset Rdpf data tables useful in parsing HTML SBURKE
+
+HTML::Widgets::
+::DateEntry RdpO Creates date entry widgets for HTML forms. KENNEDYH
+::Menu RdpO Builds an HTML menu FRANKIE
+::Search RdpO Perl module for building searches returning FRANKIE
+
+HTTP::
+::Browscap cdpO Provides info on web browser capabilities JAMESPO
+::BrowserDetect adph Detect browser, version, OS from UserAgent LHS
+::Cookies RmpO Storage of cookies LWWWP
+::DAV ampO A client module for the WebDAV protocol PCOLLINS
+::Daemon RmpO Base class for simple HTTP servers LWWWP
+::Date Rmpf Date conversion for HTTP date formats LWWWP
+::Headers RmpO Class encapsulating HTTP Message headers LWWWP
+::Message RmpO Base class for Request/Response LWWWP
+::Negotiate Rmpf HTTP content negotiation LWWWP
+::Request RmpO Class encapsulating HTTP Requests LWWWP
+::Response RmpO Class encapsulating HTTP Responses LWWWP
+::Status Rmpf HTTP Status code processing LWWWP
+::GHTTP RdcO Perl interface to the gnome ghttp library MSERGEANT
+::WebTest bdph Run tests on remote URLs or local web files RANDERSON
+
+HTTP::Request::
+::Common Rmpf Functions that generate HTTP::Requests LWWWP
+::Form RdpO Generates HTTP::Request objects out of forms GBAUER
+
+WAP::
+::Wbmp i??? Wireless bitmap manipulation module SAA
+::WML i??? Wireless Markup language routines SAA
+
+WML::
+::Card RdpO Builds WML code for different wap browsers MALVARO
+::Deck RdpO WML Deck generator MALVARO
+
+HTTPD::
+::Access cdpO Management of server access control files LDS
+::Authen bdpO Preform HTTP Basic and Digest Authentication LDS
+::Config cdpO Management of server configuration files LDS
+::GroupAdmin bdpO Management of server group databases LDS
+::UserAdmin bdpO Management of server user databases LDS
+
+WWW::
+::BBSWatch adpO email WWW bulletin board postings TAYERS
+::Robot adpO Web traversal engine for robots & agents NEILB
+::RobotRules ampO Parse /robots.txt file LWWWP
+::Search adpO Front-end to Web search engines JOHNH
+
+WWW::Search::
+::AlltheWeb RdpO Class for searching AlltheWeb JSMYSER
+::Deja RdpO Class for www.deja.com searching MTHURN
+::Go RdpO Backend class for searching with go.com ALIAN
+
+LWP RmpO Libwww-perl LWWWP
+LWP::
+::Conn ampO LWPng stuff LWWWP
+::MediaTypes Rmpf Media types and mailcap processing LWWWP
+::Parallel RmpO Allows parallel http and ftp access with LWP MARCLANG
+::Protocol RmpO LWP support for URL schemes (http, file etc) LWWWP
+::RobotUA RmpO A UserAgent for robot applications LWWWP
+::Simple Rmpf Simple procedural interface to libwww-perl LWWWP
+::UA ampO LWPng stuff LWWWP
+::UserAgent RmpO A WWW UserAgent class LWWWP
+
+MIME::
+::Base64 Rdhf Encode/decode Base 64 (RFC 2045) GAAS
+::QuotedPrint Rdpf Encode/decode Quoted-Printable GAAS
+::Decoder RdpO OO interface for decoding MIME messages ERYQ
+::Entity RdpO An extracted and decoded MIME entity ERYQ
+::Head RdpO A parsed MIME header ERYQ
+::IO ?dpO DEPRECATED: now part of IO:: ERYQ
+::Latin1 ?dpO DEPRECATED and removed ERYQ
+::Lite RdpO Single module for composing simple MIME msgs ERYQ
+::Parser RdpO Parses streams to create MIME entities ERYQ
+::Types adpr Returns the MIME type for a filename/suffix OKAMOTO
+::Words Rdpf Encode/decode RFC1522-escaped header strings ERYQ
+
+MIME::Lite::
+::HTML bmpO Provide routine to transform HTML to MIME ALIAN
+
+Apache RmcO Interface to the Apache server API DOUGM
+
+Apache PerlHandler modules
+
+Apache::
+::ASP bdpO Implement Active Server Pages CHAMAS
+::AdBanner cdpf Ad banner server CHOLET
+::AddrMunge bdpf Munge email addresses in webpages MJD
+::Archive bdpf Make linked contents pages of .tar(.gz) JPETERSON
+::AutoIndex Rdcf Lists directory content GOZER
+::AxKit RdcO XML Application Server for Apache MSERGEANT
+::BBS cdpO BBS like System for Apache MKOSSATZ
+::Cachet i OutputChain with caching MERLYN
+::CallHandler cdpf Map filenames to subroutine calls GKNOPS
+::Compress bdpO Compress content on the fly KWILLIAMS
+::Dir i OO (subclassable) mod_dir replacement DOUGM
+::Dispatch bmpf Call PerlHandlers as CGI scripts GEOFF
+::Embperl Rmcf Embed Perl in HTML GRICHTER
+::EmbperlChain bdpO Feed handler output to Embperl CHOLET
+::FTP i Full-fledged FTP proxy PMKANE
+::Filter RdpO OutputChain like functionality KWILLIAMS
+::Forward bdpO OutputChain like functionality MPB
+::Gateway bdpf A multiplexing gateway CCWF
+::GzipChain bmpf Compress files on the fly ANDK
+::Layer bdpf Layer content tree over one or more SAM
+::Magick bdpf Image conversion on-the-fly MPB
+::Mason bdpO Build sites w/ modular Perl/HTML blocks JSWARTZ
+::ModuleDoc bdpf Self documentation for Apache C modules DOUGM
+::NNTPGateway adpf A Web based NNTP (usenet) interface BOUBAKER
+::NavBar bdpO Navigation bar generator MPB
+::OWA bdpf Runs Oracle PL/SQL Web Toolkit apps SVINTO
+::OutputChain bmpO Chain output of stacked handlers JANPAZ
+::PageKit ampO Application framework w/ HTML::Template TJMATHER
+::PassFile bdpf Send file via OutputChain ANDK
+::PerlRun Smpf Run unaltered CGI scripts APML
+::PrettyPerl Rdpf Syntax highlighting for Perl files RA
+::PrettyText bdpf Re-format .txt files for client display CHTHORMAN
+::RandomLocation bdpf Random image display RKOBES
+::Registry Smpf Run unaltered CGI scripts APML
+::Reload RdpO Reload changed modules (extending StatINC) MSERGEANT
+::RobotRules cdpf Enforce robot rules (robots.txt) PARKER
+::SSI RmpO Implement server-side includes in Perl KWILLIAMS
+::SSIChain bmpO SSI on other modules output JANPAZ
+::Sandwich bmpf Layered document (sandwich) maker VKHERA
+::ShowRequest bdpf Show phases and module participation DOUGM
+::SimpleReplace ampf Simple replacement template tool GEOFF
+::Stage Rdpf Manage a document staging directory ANDK
+::TarGzip c Manage .tar.gz file ZENIN
+::TimedRedirect bdpf Redirect urls for a given time period PETERM
+::UploadSvr bdpO A lightweight publishing system ANDK
+::VhostSandwich cdpf Virtual host layered document maker MARKC
+::WDB bdpf Database query/edit tool using DBI JROWE
+::WebSQL cdpO Adaptation of Sybase's WebSQL GUNTHER
+::ePerl Rdpr Fast emulated Embedded Perl (ePerl) RSE
+::iNcom bdpf An e-commerce framework FRAJULAC
+
+Apache PerlInitHandler modules
+
+Apache::
+::RequestNotes ampf Pass cookie & form data around pnotes GEOFF
+
+Apache PerlAuthenHandler modules
+
+Apache::
+::AuthAny bdpf Authenticate with any username/password MPB
+::AuthenCache bmpf Cache authentication credentials JBODNAR
+::AuthCookie RdpO Authen + Authz via cookies KWILLIAMS
+::AuthenDBI bmpO Authenticate via Perl's DBI MERGL
+::AuthenGSS cdpf Generic Security Service (RFC 2078) DOUGM
+::AuthenIMAP bdpf Authentication via an IMAP server MICB
+::AuthenPasswdSrv bdpf External authentication server JEFFH
+::AuthenPasswd bdpf Authenticate against /etc/passwd DEP
+::AuthLDAP bdpf LDAP authentication module CDONLEY
+::AuthPerLDAP bdpf LDAP authentication module (PerLDAP) HENRIK
+::AuthenNIS bdpf NIS authentication DEP
+::AuthNISPlus bdpF NIS Plus authentication/authorization VALERIE
+::AuthenRaduis bdpf Authentication via a Radius server DANIEL
+::AuthenSmb bdpf Authenticate against NT server PARKER
+::AuthenURL bdpf Authenticate via another URL JGROENVEL
+::DBILogin bdpf Authenticate to backend database JGROENVEL
+::DCELogin bdpf Obtain a DCE login context DOUGM
+::PHLogin bdpf Authenticate via a PH database JGROENVEL
+::TicketAccess bdpO Ticket based access/authentication MPB
+
+Apache PerlAuthzHandler modules
+
+Apache::
+::AuthzAge bmpf Authorize based on age APML
+::AuthzDCE cdpf DFS/DCE ACL based access control DOUGM
+::AuthzDBI bmpO Group authorization via Perl's DBI MERGL
+::AuthzGender bdpf Authorize based on gender MPB
+::AuthzNIS bdpf NIS authorization DEP
+::AuthzPasswd bdpf Authorize against /etc/passwd DEP
+::AuthzSSL bdpf Authorize based on client cert MPB
+::RoleAuthz i Role-based authorization DOUGM
+
+Apache PerlAccessHandler modules
+
+Apache::
+::AccessLimitNum bmpf Limit user access by number of requests APML
+::BlockAgent bdpf Block access from certain agents MPB
+::DayLimit bmpf Limit access based on day of week MPB
+::IPThrottle cdpf Limit bandwith consumption by IP MERLYN
+::RobotLimit cdpf Limit access of robots PARKER
+::SpeedLimit bdpf Control client request rate MPB
+
+Apache PerlTypeHandler modules
+
+Apache::
+::MIME bdcf Perl implementation of mod_mime MPB
+::MimeDBI bdpf Type mapping from a DBI database MPB
+::MimeXML bdpf mime encoding sniffer for XML files MSERGEANT
+
+Apache PerlTransHandler modules (May also include a PerlHandler)
+
+Apache::
+::AdBlocker bdpf Block advertisement images MPB
+::AddHostPath adpf Prepends parts of hostname to URI RJENKS
+::AnonProxy bdpf Anonymizing proxy MPB
+::Checksum bdpf Manage document checksum trees MPB
+::DynaRPC i Dynamically translate URIs into RPCs DOUGM
+::LowerCaseGETs bdpf Lowercase URI's when needed PLISTER
+::MsqlProxy bmpf Translate URI's into mSQL queries APML
+::ProxyPass bdpf Perl implementation of ProxyPass MJS
+::ProxyPassThru bdpO Skeleton for vanilla proxy RMANGI
+::ProxyCache i Caching proxy DOUGM
+::StripSession bdpf Strip session info from URI MPB
+::Throttle bdpf Speed-based content negotiation DONS
+::TransLDAP bdpf Translate URIs to LDAP queries CDONLEY
+
+Apache PerlFixupHandler modules
+
+Apache::
+::RefererBlock bdpf Block based on MIME type + Referer CHOLET
+::Timeit bmpf Benchmark PerlHandlers APML
+::Usertrack bdpf Perl version of mod_usertrack ABH
+
+Apache PerlLogHandler modules
+
+Apache::
+::DBILogConfig bdpf Custom format logging via DBI JBODNAR
+::DBILogger bdpf Logging via DBI ABH
+::DumpHeaders bdpf Watch HTTP transaction via headers DOUGM
+::LogMail bdpf Log certain requests via email MPB
+::Traffic bdpf Logs bytes transferred, per-user basis MAURICE
+::WatchDog c Look for problematic URIs DOUGM
+
+Apache PerlChildInitHandler modules
+
+Apache::
+::Resource Smpf Limit resources used by httpd children APML
+
+Apache Server Configuration
+
+Apache::
+::ConfigLDAP i Config via LDAP and <Perl> MARKK
+::ConfigDBI i Config via DBI and <Perl> MARKIM
+::ModuleConfig SmcO Interface to configuration API APML
+::PerlSections SmpO Utilities for <Perl> sections APML
+::httpd_conf bmpO Methods to configure and run an httpd APML
+::src SmpO Finding and reading bits of source APML
+
+Apache Database modules
+
+Apache::
+::DBI bmpO Persistent DBI connection mgmt. MERGL
+::Mysql bdpO Persistent connection mgmt. for Mysql NJENSEN
+
+Apache::Sybase::
+::DBlib bmpO Persistent DBlib connection mgmt. BMILLETT
+::CTlib bapO Persistent CTlib connection mgmt. MDOWNING
+
+Interfaces and integration with Apache C structures and modules
+
+Apache::
+::Backhand bdcr Bridge between mod_backhand + mod_perl DLOWE
+::CmdParms SmcO Interface to Apache cmd_parms struct APML
+::Command bmcO Interface to Apache command_rec struct APML
+::Connection SmcO Inteface to Apache conn_rec struct APML
+::Constants Smcf Constants defined in httpd.h APML
+::ExtUtils SmpO Utils for Apache:C/Perl glue APML
+::File SmcO Methods for working with files APML
+::Handler bmcO Interface to Apache handler_rec struct APML
+::Log SmcO ap_log_error interface APML
+::LogFile bmcO Interface to Apache's piped logs, etc. APML
+::Module bmcO Interface to Apache module struct APML
+::Scoreboard RdcO Perl interface to Apache's scoreboard.h DOUGM
+::Server SmcO Interface to Apache server_rec struct APML
+::SubProcess cmcO Interface to Apache subprocess API APML
+::Table SmcO Interface to Apache table struct + API APML
+::URI SmcO URI component parsing and unparsing APML
+::Util Smcf Interface to Apache's util*.c functions APML
+
+HTTP Method handler
+
+Apache::
+::PATCH bdpf HTTP PATCH method handler MPB
+::PUT cdpf HTTP PUT method handler SORTIZ
+::Roaming bdpO PUT/GET/MOVE/DELETE (Netscape Roaming) JWIED
+
+Watchdog and Monitoring tools
+
+Apache::
+::SizeLimit Smpf Graceful exit for large children APML
+::GTopLimit Rdpn Child exit on small shared or large mem STAS
+::Status Smpf Embedded interpreter runtime status APML
+::VMonitor Rdpn Visual System and Processes Monitor STAS
+
+Apache::Watchdog::
+::RunAway Rdpn RunAway processes watchdog/terminator STAS
+
+Development and Debug tools
+
+Apache::
+::DB amcO Hook Perl interactive DB into mod_perl DOUGM
+::Debug Rmpf mod_perl debugging utilities APML
+::DebugInfo ampO Per-request data logging GEOFF
+::DProf bmcf Hook Devel::DProf into mod_perl DOUGM
+::FakeRequest ampO Implement Apache methods off-line APML
+::Leak bmcf Memory leak tracking routines APML
+::Peek amcf Devel::Peek for mod_perl APML
+::SawAmpersand bmpf Make sure noone is using $&, $' or $` APML
+::SmallProf bmpf Hook Devel::SmallProf into mod_perl DOUGM
+::StatINC Smpf Reload require'd files when updated APML
+::Symbol bmcO Things for symbol things APML
+::Symdump bmpf Symbol table snapshots to disk APML
+::test Smpf Handy routines for 'make test' scripts APML
+
+Miscellaneous Apache modules
+
+Apache::
+::Byterun i Run Perl bytecode modules DOUGM
+::Cookie amcO C version of CGI::Cookie APML
+::Icon bdcO Access to AddIcon* configuration DOUGM
+::Include Smpf mod_include + Apache::Registry handler APML
+::Mmap bdcf Share data via Mmap module FLETCH
+::ParseLog bdpO OO interface to Apache log files AKIRA
+::RegistryLoader SmpO Apache::Registry startup script loader APML
+::Request amcO CGI.pm functionality using API methods APML
+::Safe ampO Adaptation of "safecgiperl" APML
+::Session bmpO Maintain client <-> httpd session/state JBAKER
+::Servlet ampO Interface to the Java Servlet engine IKLUFT
+::SIG SmpO Signal handlers for mod_perl APML
+::State i Powerful state engine RSE
+::TempFile bdpf Manage temporary files TOMHUGHES
+::Upload amcO File upload class APML
+
+Netscape::
+::Cache bdpO Access Netscape cache files SREZIC
+::History bdpO Class for accessing Netscape history DB NEILB
+::HistoryURL bdpO Like a URI::URL, but with visit time NEILB
+::Server adcO Perl interface to Netscape httpd API BSUGARS
+
+HyperWave::
+::CSP cdpO Interface to HyperWave's HCI protocol GOSSAMER
+
+WebFS::
+::FileCopy Rdpf Get, put, copy, delete files located by URL BZAJAC
+
+WebCache::
+::Digest bdpf Internet Cache Protocol (RFCs 2186 and 2187) MHAMILTON
+
+ASP Rdpr Perl interface to ASP PerlScript TIMMY
+Authorizenet bdpf Get Credit Card Info from authorizenet DLINCOLN
+BizTalk RdpO Microsoft BizTalk Framework Toolkit SIMONJ
+CGI_Lite MnpO Light-weight interface for fast apps SHGUN
+CIPP RdpO Preprocessor for embedding Perl, SQL in HTML JRED
+Catalog bmpO Manage/display resources catalog (URLs etc.) LDACHARY
+PApp adch Multi-page-state-preserving web applications MLEHMANN
+WDDX RdpO Allows distributed data exchange via XML GUELICH
+WING RmhO Apache based IMAP/NNTP Gateway MICB
+WOMP cdpO CGI App Dev Suite: authen/state/html SPADKINS
+
+FCGI Rdcr Fast CGI SKIMO
+FCGI::
+::ProcManager bdpO A FastCGI process manager JURACH
+
+16) Server and Daemon Utilities
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Event bmch fast, generic event loop JPRIT
+Event::
+::Stats Rmcf Collects statistics for Event JPRIT
+::tcp bmpO TCP session layer library JPRIT
+
+EventServer RupO Triggers objects on i/o, timers & interrupts JACKS
+::Functions Rupf Utility functions for initializing servers JACKS
+::Gettimeofday Rupr gettimeofday syscall wrapper JACKS
+::Signal Rupr signalhandler for the eventserver JACKS
+
+Server::Server::
+::EventDriven RupO See 'EventServer' (compatibility maintained) JACKS
+
+Server::Echo::
+::MailPipe cup A process which accepts piped mail JACKS
+::TcpDForking cup TCP daemon which forks clients JACKS
+::TcpDMplx cup TCP daemon which multiplexes clients JACKS
+::TcpISWFork cup TCP inetd wait process, forks clients JACKS
+::TcpISWMplx cup TCP inetd wait process, multiplexes clients JACKS
+::TcpISNowait cup TCP inetd nowait process JACKS
+::UdpD cup UDP daemon JACKS
+::UdpIS cup UDP inetd process JACKS
+
+Server::Inet::
+::Functions cdpf Utility functions for Inet socket handling JACKS
+::Object cupO Basic Inet object JACKS
+::TcpClientObj cupO A TCP client (connected) object JACKS
+::TcpMasterObj cupO A TCP master (listening) object JACKS
+::UdpObj cupO A UDP object JACKS
+
+Server::FileQueue::
+::Functions cupf Functions for handling files and mailboxes JACKS
+::Object cupO Basic object JACKS
+::DirQueue cupO Files queued in a directory JACKS
+::MboxQueue cupO Mail queued in a mail box JACKS
+
+Server::Mail::
+::Functions cupf Functions for handling files and mailboxes JACKS
+::Object cupO Basic mail object JACKS
+
+MailBot cdpO Archive server, listserv, auto-responder RHNELSON
+Mud cdcO A multi-user online interactive game server GED
+
+NetServer::
+::Compiler idph State machine compiler for TCP/IP servers CHSTROSS
+::Generic RdpO generic OOP class for internet servers CHSTROSS
+::Portal bmpO Sets up a mini-server accessible via telnet JPRIT
+
+Time::
+::Warp Rmcf Change the start and speed of Event time JPRIT
+
+Spool::
+::Queue i Generic printer spooling facilities RAM
+
+17) Archiving, Compression and Conversion
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Compress::
+::Bzip2 Rdcf Interface to the Bzip2 compression library AZEMGI
+::LZO Rdcf Interface to the LZO compression library MFX
+::LZV1 RdcO Leight-weight Lev-Zimpel-Vogt compression MLEHMANN
+::Zlib RdcO Interface to the Info-Zip zlib library PMQS
+
+Convert::
+::ASN1 adpO Standard en/decode of ASN.1 structures GBARR
+::BER adpO Class for encoding/decoding BER messages GBARR
+::BinHex anpO Convert to/from RFC1741 HQX7 (Mac BinHex) ERYQ
+::EBCDIC adpf ASCII to/from EBCDIC CXL
+::Recode Rdpf Mapping functions between character sets GAAS
+::SciEng bdpO Convert numbers with scientific notation COLINK
+::Translit MdpO String conversion among many character sets GENJISCH
+::UU bdpf UUencode and UUdecode ANDK
+::UUlib Rdcr Intelligent de- and encode (B64, UUE...) MLEHMANN
+
+AppleII::
+::Disk bdpO Read/write Apple II disk image files CJM
+::ProDOS bdpO Manipulate files on ProDOS disk images CJM
+::DOS33 i Manipulate files on DOS 3.3 disk images CJM
+::Pascal i Manipulate files on Apple Pascal disk images CJM
+
+Archive::
+::Tar adpO Read, write and manipulate tar files CDYBED
+::Zip RdpO Provides an interface to ZIP archive files NEDKONZ
+
+PPM Rdpf Perl Package Manager MURRAY
+
+RPM adcO RPM package management RJRAY
+RPM::
+::Constants adcO Constants for RPM package management RJRAY
+::Database adcO DB interface for RPM package management RJRAY
+::Headers adcO Headers for RPM package management RJRAY
+
+18) Images, Pixmap and Bitmap Manipulation, Drawing and Graphing
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+ElectricArc RdpO Generic diagram manipulation toolset SELKOVJR
+GIFgraph RdpO Obsolete, see GD::Graph MVERB
+Gimp Mmch Rich interface to write plugins for The Gimp MLEHMANN
+GraphViz RdpO Interface to the GraphViz graphing tool LBROCARD
+OpenGL adcf Interface to OpenGL drawing/imaging library FIJI
+PGPLOT Rdof PGPLOT plotting library - scientific graphs KGB
+PixDraw adcO Drawing and manipulating true color images KSB
+RenderMan a Manipulate RenderMan objects GMLEWIS
+T3D cdpO Realtime extensible 3D rendering GJB
+ThreeD i Namespace root for all kinds of 3D modules ADESC
+
+GD adcO Interface to Gd Graphics Library LDS
+GD::
+::Barcode bdpO Create barcode image with GD KWITKNR
+::Graph RdpO Create charts using GD MVERB
+::Text RdpO Classes for string handling with GD MVERB
+
+VRML RdpO VRML methods independent of specification HPALM
+VRML::
+::VRML1 RdpO VRML methods with the VRML 1.0 standard HPALM
+::VRML2 RdpO VRML methods with the VRML 2.0 standard HPALM
+::Color Rdpf color functions and X11 color names HPALM
+::Base RdpO common basic methods HPALM
+::Browser i A complete VRML viewer LUKKA
+
+Graphics::
+::Libplot RdcO Binding for C libplotter plotting library JLAPEYRE
+::Plotter Rd+O Binding for C++ libplotter plotting library MAKLER
+::Simple idcO Simple drawing primitives NEERI
+::Turtle idp Turtle graphics package NEERI
+
+Image::
+::Colorimetry cdpO transform colors between colorspaces JONO
+::DS9 adpO Interface to SAO DS9 image & analysis prog DJERIUS
+::Grab RdpO Grabbing images off the Internet MAHEX
+::Magick RdcO Read, query, transform, and write images JCRISTY
+::ParseGIF RdpO Parse GIF images into component parts BENL
+::Size Rdpf Measure size of images in common formats RJRAY
+::Info RdpO Extract meta information from image files GAAS
+
+Chart::
+::Base RdpO Business chart widget collection NINJAZ
+::Gdchart bdch based on Bruce V's C gdchart distribution MHEMPEL
+::Graph Rmpr front-end to gnuplot and XRT MHYOUNG
+::PNGgraph RdpO Package to generate PNG graphs, uses GD.pm SBONDS
+::Pie adpO Implements "new Chart::Pie()" KARLON
+::Plot bdcO Graph two-dimensional data (uses GD.pm) SMORTON
+::XMGR Rdph interface to XMGR plotting package TJENNESS
+
+Xmms bdcO Interactive remote control shell for xmms DOUGM
+Xmms::
+::Config bdcO Perl interface to the xmms_cfg_* API DOUGM
+::Remote bdcO Perl interface to the xmms_remote_* API DOUGM
+::Plugin i Perl interface to the xmms plugin APIs DOUGM
+
+Flash::
+::SWF cmpO Read/Write Macromedia Flash SWF files SABREN
+
+19) Mail and Usenet News
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Mail::
+::Address adpf Manipulation of electronic mail addresses GBARR
+::Alias bdpO Manipulate E-mail aliases and alias files ZELT
+::Audit RdpO Toolkit for constructing mail filters SIMON
+::Cap adpO Parse mailcap files as specified in RFC 1524 GBARR
+::CheckUser bdpf Checking email addresses for validness ILYAM
+::Ezmlm bdpO Object methods for ezmlm mailing lists GHALSE
+::Field RdpO Base class for handling mail header fields GBARR
+::Folder adpO Base-class for mail folder handling KJOHNSON
+::Freshmeat RdpO Parses newsletters from http://freshmeat.net ASPIERS
+::Header RdpO Manipulate mail RFC822 compliant headers GBARR
+::Internet adpO Functions for RFC822 address manipulations GBARR
+::MH adcr MH mail interface MRG
+::Mailer adpO Simple mail agent interface (see Mail::Send) GBARR
+::POP3Client RdpO Support for clients of POP3 servers SDOWD
+::Procmail Rdpf Procmail-like facility for creating easy mai JV
+::Send adpO Simple interface for sending mail GBARR
+::Sender MdpO socket() based mail with attachments, SMTP JENDA
+::Sendmail Rdpf Simple platform independent mailer MIVKOVIC
+::UCEResponder i Spamfilter CHSTROSS
+::Util adpf Mail utilities (for by some Mail::* modules) GBARR
+::IMAPClient RdpO An IMAP Client API DJKERNEN
+
+Mail::Field::
+::Received RdpO Parses Received headers as per RFC822 ASPIERS
+
+News::
+::Article adpO Module for handling Usenet articles AGIERTH
+::Gateway ampO Mail/news gatewaying, moderation support RRA
+::NNTPClient bdpO Support for clients of NNTP servers RVA
+::Newsrc adpO Manage .newsrc files SWMCD
+::Scan cdpO Gathers and reports newsgroup statistics GBACON
+
+NNTP::
+::Server i Support for an NNTP server JOEHIL
+
+NNML::
+::Server adpO An simple RFC 977 NNTP server ULPFR
+
+IMAP::
+::Admin RdpO IMAP Administration EESTABROO
+
+Sendmail::
+::Milter Rdch Write mail filters for sendmail in Perl CYING
+
+20) Control Flow Utilities (callbacks and exceptions etc)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+AtExit Rdpr atexit() function to register exit-callbacks BRADAPP
+Callback RdpO Define easy to use function callback objects MUIR
+Religion adpr Control where you go when you die()/warn() KJALB
+
+Hook::
+::PrePostCall adpO Add actions before and after a routine PVERD
+
+Memoize bdpr Automatically cache results of functions MJD
+Memoize::
+::ExpireLRU Rdpr Provide LRU Expiration for Memoize BPOWERS
+
+21) File Handle, Directory Handle and Input/Output Stream Utilities
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+IO::
+::AtomicFile RdpO Write a file which is updated atomically ERYQ
+::Dir cdpO Directory handle objects and methods GBARR
+::File cdpO Methods for disk file based i/o handles GBARR
+::Handle cdpO Base class for input/output handles GBARR
+::Lines RdpO I/O handle to read/write to array of lines ERYQ
+::Pipe cdpO Methods for pipe handles GBARR
+::Ptty amcf Pseudo terminal interface functions RGIERSIG
+::Pty cdpO Methods for pseudo-terminal allocation etc PEASE
+::React RdpO OO Expect-like communication GARROW
+::STREAMS cdcO Methods for System V style STREAMS control NI-S
+::Scalar RdpO I/O handle to read/write to a string ERYQ
+::ScalarArray RdpO I/O handle to read/write to array of scalars ERYQ
+::Seekable cdpO Methods for seekable input/output handles GBARR
+::Select adpO Object interface to system select call GBARR
+::Socket cdpO Methods for socket input/output handles GBARR
+::Stty bmpf POSIX compliant stty interface RGIERSIG
+::Tee RdpO Multiplex output to multiple handles KENSHAN
+::Wrap RdpO Wrap old-style FHs in standard OO interface ERYQ
+::WrapTie RdpO Tie your handles & retain full OO interface ERYQ
+::Zlib adpO IO:: style interface to Compress::Zlib TOMHUGHES
+
+FileHandle SupO File handle objects and methods P5P
+FileCache Supf Keep more files open than the system permits P5P
+DirHandle SupO Directory handle objects and methods CHIPS
+SelectSaver SupO Save and restore selected file handle CHIPS
+Selectable cdpO Event-driven I/O streams MUIR
+
+Log::
+::Agent adpO A general logging framework RAM
+::Dispatch RdpO Log messages to multiple outputs DROLSKY
+::Topics Rdpf Control flow of topic based logging messages JARW
+::TraceMessages Rdpf Print developer's trace messages EDAVIS
+
+Log::Agent::
+::Logger cdpO Application-level logging interface RAM
+::Rotate adpO Logfile rotation config and support RAM
+
+Expect RdpO Close relative of Don Libes' Expect in perl RGIERSIG
+
+22) Microsoft Windows Modules
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Win32::
+::ADO adpf ADO Constants and helper functions MSERGEANT
+::ASP Rdpr Makes PerlScript ASP development easier WNODOM
+::AbsPath Rdpf relative paths to absolute, understands UNCs JENDA
+::AdminMisc Rdcf Misc admin and net functions DAVEROTH
+::COM cd+O Access to native COM interfaces JDB
+::ChangeNotify bdcO Monitor changes to files and directories CJM
+::Clipboard Rdch Interaction with the Windows clipboard ACALPINI
+::Console Rdch Win32 Console and Character mode functions ACALPINI
+::Event bdcO Use Win32 event objects for IPC CJM
+::EventLog adcf Interface to Win32 EventLog functions WIN32
+::FUtils bdcf Implements missing File Utility functions JOCASA
+::FileOp Mdpf file operations + fancy dialogs, INI files JENDA
+::FileType RdpO modify Win32 fily type mapping JENDA
+::GD RdcO Win32 port of the GD extension (gif module) DAVEROTH
+::GUI bmch Perl-Win32 Graphical User Interface ACALPINI
+::GuiTest adcf SendKeys, FindWindowLike and more ERNGUI
+::IPC bdcO Base class for Win32 synchronization objects CJM
+::Internet RdcO Perl Module for Internet Extensions ACALPINI
+::Message bdcf Network based message passing DAVEROTH
+::Mutex bdcO Use Win32 mutex objects for IPC CJM
+::NetAdmin adcf Interface to Win32 NetAdmin functions WIN32
+::NetResource adcf Interface to Win32 NetResource functions WIN32
+::ODBC Rd+O ODBC interface for accessing databases DAVEROTH
+::OLE Rm+h Interface to OLE Automation JDB
+::Pipe Rd+O Named Pipes and assorted function DAVEROTH
+::Process adcf Interface to Win32 Process functions WIN32
+::RASE Rdpf Dialup entries and connections on Win32 MBLAZ
+::Registry adcf Interface to Win32 Registry functions WIN32
+::Semaphore bdcO Use Win32 semaphore objects for IPC CJM
+::SerialPort RdpO Win32 Serial functions/constants/interface BBIRTH
+::Shortcut Rd+O Manipulate Windows Shortcut files ACALPINI
+::Sound Rdch An extension to play with Windows sounds ACALPINI
+::WinError adcf Interface to Win32 WinError functions WIN32
+::SystemInfo RdpO Memory and Processor information CJOHNSTON
+::API RdcO Perl Win32 API Import Facility ACALPINI
+
+WinNT cdcf Interface to Windows NT specific functions WIN32
+NT cdcf Old name for WinNT - being phased out WIN32
+Win95 i Interface to Windows 95 specific functions WIN32
+
+Win32API::
+::CommPort RdpO Win32 Serial functions/constants/interface BBIRTH
+::Console cdcf Win32 Console Window functions/consts TYEMQ
+::File cdcf Win32 file/dir functions/constants TYEMQ
+::Registry adcf Win32 Registry functions/constants TYEMQ
+::WinStruct cdcf Routines for Win32 Windowing data structures TYEMQ
+::Window cdcf Win32 Windowing functions/constants TYEMQ
+
+23) Miscellaneous Modules
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+ARS Mmhh Interface to Remedy's Action Request API JMURPHY
+Agent cdpO Transportable Agent module SPURKIS
+Archie Rdpf Archie queries via Prospero ARDP protocol GBOSS
+BnP RdhO Build'n'Play all-purpose batch install. tool STBEY
+Bundle i Namespace reserved for modules collections ANDK
+CPAN RdpO Perl Archive browse and download ANDK
+Gedcom bmpO Interface to genealogy Gedcom files PJCJ
+Logfile RdpO Generic methods to analyze logfiles ULPFR
+NetObj adpO Module loading in real time over TCP/IP JDUNCAN
+Neural ad+O Generic simulation of neural networks LUKKA
+Nexus cdcO Interface to Nexus (threads/ipc/processes) RDO
+Pcap i An interface for LBL's packet capture lib AMOSS
+Roman Rdpf Convert Roman numbers to and from Arabic OZAWA
+SDDF cd+O Interface to Pablo Self Defining Data Format FIS
+
+AI::
+::Fuzzy RdpO Perl extension for Fuzzy Logic SABREN
+::jNeural RdcO Jet's Neural Architecture JETTERO
+::NeuralNet RdpO A simple back-prop neural net JBRYAN
+
+Astro::
+::Coord Rdpf Transform telescope and source coordinates CPHIL
+::Misc Rdpf Miscellaneous astronomical routines CPHIL
+::MoonPhase Rdpf Information about the phase of the Moon. RPIKKARA
+::SLA Rdcf Interface to SLALIB positional astronomy lib TJENNESS
+::SunTime cdpf Calculate sun rise/set times ROBF
+::Time Rdpf General time conversions for Astronomers CPHIL
+::Sunrise RdpO Computes sunrise/sunset for a given day RKHILL
+
+Audio::
+::CD bdcO Perl interface to libcdaudio (cd + cddb) DOUGM
+::Sox i sox sound library as one or more modules NI-S
+
+Audio::Play::
+::MPG123 RdcO Generic frontend for MPG123 MLEHMANN
+
+MPEG::
+::ID3v1Tag MdpO ID3v1 MP3 Tag Reader/Writer SVANZOEST
+::ID3v2Tag bdpO OO, extensible ID3 v2.3 tagging module MDIMEO
+::MP3Play RdhO Create your own MPEG audio player JRED
+
+MP3::
+::Info bdpf Manipulate / fetch info from MP3 audio files CNANDOR
+::Tag bdpO Tag - Module for reading tags of mp3 files THOGEE
+
+BarCode::
+::UPC i Produce PostScript UPC barcodes JONO
+
+Bio i Utilities for molecular biology SEB
+
+Business::
+::Cashcow i??? Internet payment with the Danish PBS GKE
+::CreditCard Rdpf Credit card number check digit test JONO
+::ISBN RdpO Work with ISBN as objects BDFOY
+::ISSN adpO Object and functions to work with ISSN SAPAPO
+::OnlinePayment RdpO Ecommerce middleware JASONK
+::UPC ???? manipulating Universal Product Codes ROBF
+::US_Amort Mdph US-style loan amortization calculations SBURKE
+
+Chemistry::
+::Elements RdpO Working with Chemical Elements BDFOY
+::Isotopes idpO extends Elements to deal with isotopes BDFOY
+
+Cisco::
+::Conf adpO Cisco router administratian via TFTP JWIED
+
+FAQ::
+::OMatic RdpO A CGI-based FAQ/help database maintainer JHOWELL
+
+FestVox i??? Build synthetic voices (cf. www.festvox.org) LENZO
+
+Finance::
+::Quote RmpO Fetch stock prices over the Internet PJF
+::QuoteHist bdpO Historical stock quotes from multiple sites MSISK
+
+Games::
+::Cards adpO Tools to write card games in Perl AKARGER
+::Dice cdpf Simulates rolling dice PNE
+::Hex cdpO Object library for hexmap-based board games JHKIM
+::WordFind bdpO Generate word-find type puzzles AJOHNSON
+::Alak Rdpf a simple gomoku-like game SBURKE
+::Dissociate Mdpf a Dissociated Press algorithm and filter SBURKE
+::Worms RdpO A life simulator for Conway/Patterson worms SBURKE
+
+Geo::
+::METAR Rdpf Process Aviation Weather (METAR) Data JZAWODNY
+::Storm_Tracker i Retrieves tropical storm advisories CARPENTER
+::WeatherNOAA Rdpf Current/forecast weather from NOAA MSOLOMON
+
+HP200LX::
+::DB cdpO Handle HP 200LX palmtop computer database GGONTER
+::DBgui cdpO Tk base GUI for HP 200LX db files GGONTER
+
+LEGO::
+::RCX bdpO Control you Lego Mindstorm RCX computer JQUILLAN
+
+MIDI Mdph read/edit/compose MIDI files SBURKE
+MIDI::
+::Realtime cdpO Interacts with MIDI devices in realtime FOOCHRE
+
+Penguin RdpO Remote Perl in Secure Environment AMERZKY
+Penguin::
+::Easy RdpO Provides quick, easy access to Penguin API JDUNCAN
+
+Psion::
+::Db idpO Handle Psion palmtop computer database files IANPX
+
+Remedy::
+::AR adcO Interface to Remedy's Action Request API RIK
+
+Router::
+::LG bdpO Execute commands on routers (based on lg.pl) CHRISJ
+
+Schedule:: See also Schedule:: in chapter 4
+::Match adpf Pattern-based crontab-like schedule TAIY
+
+Silly::
+::StringMaths adpf Do maths with letters and strings SKINGTON
+
+SyslogScan::
+::SyslogEntry bdpO Parse UNIX syslog RHNELSON
+::SendmailLine bdpO Summarize sendmail transactions RHNELSON
+
+Video::Capture::
+::V4l Mdch Video4linux framegrabber interface MLEHMANN
+
+Watchdog::
+::Service adpO Look for service in process table PSHARPE
+::HTTPService adpO Test status of HTTP server PSHARPE
+::MysqlService adpO Test status of Mysql server PSHARPE
+
+24) Interface Modules to Commercial Software
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Resolute::
+::RAPS cd+O Interface to Resolute Software's RAPS CHGOETZE
+
+AltaVista::
+::SearchSDK cdcf Perl Wrapper for AltaVista SDK functionality JTURNER
+
+Real::
+::Encode i Interface to Progressive Network's RealAudio KMELTZ
+
+HtDig RdpO Interface for the HtDig indexing system JTILLMAN
+MQSeries RdcO IBM's MQSeries messaging product interface WPMOORE
+PQI cdcO Perl Queuing Interface, to MQSeries, MSMQ SIMONJ
+R3 bdcO Interface to SAP R/3 using RFCSDK SCHOEN
+
+Part 3 - Big Projects Registry
+
+This section of the Module List is devoted to listing "Big Projects". I
+don't want to define Big (or even Project) here. Hopefully the items below
+speak for themselves. Almost all are just ideas, though some have been
+dabbled with and some are active projects.
+
+These are ideas for people with very strong skills and lots of time. Please
+talk, and listen, to Larry and the perl5-porters _before_ starting to do any
+work on projects which relate to the core implementation of Perl.
+
+Ask not when these will be implemented, ask instead how you can help
+implement them.
+
+1) Items in the Todo File
+
+The Todo supplied with Perl lists over 50 items in categories ranging from
+"Would be nice to have" to "Vague possibilities".
+
+Contacts: P5P
+
+2) Multi-threading
+
+This is really two projects. True threads (e.g., POSIX) using multiple
+independant perl interpreter structures and simple timeslicing of 'tasks'
+within a single perl interpreter. True threads requires operating system
+support or an external thread library, simple timeslicing does not (and
+should be portable to all platforms).
+
+Malcolm Beattie < mbeattie@sable.ox.ac.uk > has done extensive work in this
+area and is folding this work into Perl now for version 5.005 or 5.006.
+
+Contacts: MICB P5P
+
+3) Object Management Group CORBA & IDL
+
+Work is underway on the COPE mailing list, led by Bart Schuller, to
+implement a Perl binding for CORBA. See http://www.lunatech.com/cope/
+
+Contacts: COPEML BARTS
+
+4) Expand Tied Array Interface
+
+LEN, PUSH, POP, SHIFT, UNSHIFT and a fallback to SPLICE are needed.
+Complicated by very widespread use of arrays within perl internals.
+
+Contacts: P5P CHIPS
+
+5) Extend Yacc To Write XS Code
+
+To quote Larry, "The right way to integrate yacc with Perl would be to have
+it spit out an XS module, presumably." Some version of yacc, like byacc,
+should be converted to spit out an OO .xs and .pm implementing a parser.
+Jake Donham's work so far is available in his CPAN directory
+http://www.cpan.org/authors/id/JAKE .
+
+Contacts: JAKE NI-S P5P
+
+6) Approximate Matching Regular Expressions
+
+Add support into the core for approximate matching m/.../a (like the agrep
+utility).
+
+Contacts: JHI
+
+Part 4 - Standards Cross-reference
+
+This section aims to provide a cross reference between standards that exist
+in the computing world and perl modules which have been written to implement
+or interface to those standards.
+
+It also aims to encourage module authors to consider any standards that
+might relate to the modules they are developing.
+
+4.1) IETF - Internet Engineering Task Force (RFCs)
+
+Standard Description Module Name
+-------- ----------- -----------
+RFC821 Simple Mail Transfer Protocol Net::SMTP
+RFC822 Internet Mail Header Mail::Header
+RFC822 Internet Mail addresses Mail::Address
+RFC867 Daytime Protocol Net::Time
+RFC868 Time Protocol Net::Time
+RFC959 File Transfer Protocol Net::FTP
+RFC977 A minimal NNTP Server NNML::Server
+RFC977 Network News Transfer Protocol Net::NNTP
+RFC1035, RFC1183, RFC1706
+ Domain names, implementation & specification Net::DNS
+RFC1123 Date conversion routines HTTP::Date
+RFC1319 MD2 Message-Digest Algorithm Digest::MD2
+RFC1321 MD5 Message-Digest Algorithm Digest::MD5
+RFC1350 Trivial File Transfer Protocol TFTP, Net::TFTP
+RFC1413 Identification Protocol Net::Ident
+RFC1592 Simple Network Management Protocol SNMP, Net::SNMP
+RFC1738 Uniform Resource Locators URI::URL
+RFC1777 Lightweight Directory Access Protocol Net::LDAP
+RFC1861 Simple Network Pager Protocol Net::SNPP
+RFC1866 Encode/decode HTML entities in a string HTML::Entities
+RFC1939 Post Office Protocol 3 Net::POP3
+RFC1950-1952
+ ZLIB, DEFLATE, GZIP Compress::Zlib
+RFC1960 String Representation of LDAP Search Filters Net::LDAP::Filter
+RFC2045-2049
+ MIME - Multipurpose Internet Mail Extensions MIME::*
+RFC2138 Terminal server authentification and accting RADIUS
+RFC2229 Dictionary Server Net::Dict
+RFC2518 HTTP Extensions for Distributed Authoring HTTP::DAV
+
+4.2) ITU - International Telegraph Union (X.*)
+
+Standard Description Module Name
+-------- ----------- -----------
+X.209 Basic Encoding Rules for ASN.1 Convert::BER
+
+4.3) ISO - International Standards Organization (ISO*)
+
+Standard Description Module Name
+-------- ----------- -----------
+ISO/R 2015-1971
+ Date calculations for the Gregorian calendar Date::DateCalc
+ISO639 Two letter codes for language identification Locale::Language
+ISO3166 Two letter codes for country identification Locale::Country
+
+Part 5 - Who's Who and What's Where
+
+5.1) Information / Contact Reference Details (in alphabetical order)
+
+The following list of email addresses is based on the credentials stored on
+the automated Perl Authors Upload Server (PAUSE). If any of the details is
+not up to date, you're requested to visit
+http://www.cpan.org/modules/04pause.html , where you will find a pointer to
+a CGI script that lets you edit the database entries yourself.
+
+5.2) Perl Frequently Asked Questions (FAQ)
+
+The FAQ is available on all CPAN sites in the directory doc/FAQs (e.g.,
+
+ * http://www.cpan.org/doc/FAQs/
+
+) as well as from the RTFM server where you can find all posted FAQs:
+
+ * ftp://rtfm.mit.edu/pub/usenet/news.answers/perl-faq/
+ * ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/comp/lang/perl/
+
+RTFM mirror sites: North America:
+
+ * ftp://ftp.uu.net/usenet/news.answers
+ * ftp://mirrors.aol.com/pub/rtfm/usenet
+ * ftp://mirror.seas.gwu.edu/pub/rtfm
+
+Europe:
+
+ * ftp://ftp.uni-paderborn.de/pub/FAQ
+ * ftp://ftp.sunet.se/pub/usenet
+
+Asia:
+
+ * ftp://nctuccca.edu.tw/USENET/FAQ
+ * ftp://hwarang.postech.ac.kr/pub/usenet/news.answers
+ * ftp://ftp.hk.super.net/mirror/faqs
diff --git a/doc/devel/memo/01_good_modules b/doc/devel/memo/01_good_modules
new file mode 100644
index 00000000..1983d1de
--- /dev/null
+++ b/doc/devel/memo/01_good_modules
@@ -0,0 +1,1401 @@
+::implements RdpO Study in Polymorphism PDCAWLEY
+::interface RdpO Another study in polymorphism PDCAWLEY
+::override Rdpf perl pragma to override core functions CTWETEN
+::vars Rdph Perl pragma to create readonly variables CTWETEN
+
+
+Inline::
+
+
+Exporter::
+::Import Rdpn Alternate symbol exporter GARROW
+
+
+Safe::
+
+
+Symbol::
+::Table RdpO OO interface to package symbols GARROW
+
+
+Test::
+::Cmd RdpO Portable test infrastructure for commands KNIGHT
+::Harness Supf Executes perl-style tests P5P
+
+
+B::
+
+
+Filter::Util::
+
+
+Filter::
+
+
+Thread::
+
+
+Module::
+::Reload Rdpf Reloads files in %INC based on timestamps JPRIT
+
+
+Pod::
+::Text Supf convert POD data to formatted ASCII text TOMC
+::Rtf RdpO Converter from POD to Rich Text Format PVHP
+::Hlp RdpO Convert POD to formatted VMS Help text PVHP
+::XML RdpO Generate XML from POD MSERGEANT
+
+
+ExtUtils::
+::MakeMaker SupO Writes Makefiles for extensions MMML
+::Manifest Supf Utilities for managing MANIFEST files MMML
+::Embed Sdpf Utilities for embedding Perl in C/C++ apps DOUGM
+::F77 RdpO Facilitate use of FORTRAN from Perl/XS code KGB
+
+
+Carp::
+::CheckArgs Rdpf Check subroutine argument types GARROW
+
+
+Devel::
+::CallerItem RupO 'caller()' Object wrapper + useful methods JACKS
+::DumpStack Rupf Dumping of the current function stack JACKS
+::SmallProf Rdpf Line-by-line profiler ASHTED
+::StackTrace RdpO Stacktrace object w/ info like Carp::confess DROLSKY
+::Symdump RdpO Perl symbol table access and dumping ANDK
+::TraceLoad Rdpf Traces the loading of perl source code JPRIT
+::Modlist Rdpf Collect module use information RJRAY
+
+
+Exception::
+
+
+Perf:: Performance measurement other than benchmarks
+
+
+Rcs adcf Alternate RCS interface (see VCS::RCS) CFRETER
+
+
+VCS::
+::CVS RdpO Interface to GNU's CVS RSAVAGE
+
+
+ClearCase::
+::Ct Mnpf Generic cleartool wrapper DSB
+
+
+Sub::
+::Curry Rdpf Perl module to curry functions ((á la Lisp)) DAVIDH
+
+
+Fcntl Sdcf Defines fcntl() constants (see File::Lock) JHI
+
+
+Async::
+
+
+BSD::
+
+
+Env::
+
+
+Proc::
+::Background RdpO OS independent background process objects BZAJAC
+::ExitStatus Rdpf Interpret and act on wait() status values ROSCH
+::Forkfunc Rdpf Simple lwall-style fork wrapper MUIR
+::Spawn Rdpf Run external programs GARROW
+::SyncExec Rdpf Spawn processes but report exec() errors ROSCH
+
+
+Schedule:: See also Schedule:: in chapter 23
+::Load RdpO Remote system load, processes, scheduling WSNYDER
+
+
+Sys::
+::AlarmCall Rupf Timeout on any sub. Allows nested alarms JACKS
+::Hostname Supf Implements a portable hostname function P5P
+::Syslog Supf Provides same functionality as BSD syslog P5P
+ Note: The Sys:: namespace is considered harmful as it is giving no
+
+
+Be::
+
+
+FreeBSD::
+
+
+Mac:: Macintosh specific modules
+::AssistantFrames RdpO Easy creation of assistant dialogs GBAUER
+
+
+Mac::AppleEvents::
+::Simple Rdph Simple access to Mac::AppleEvents CNANDOR
+
+
+Mac::Apps::
+::Anarchie RdpO Control Anarchie 2.01+ CNANDOR
+::Launch Rdpf MacPerl module to launch / quit apps CNANDOR
+::MacPGP RdpO Control MacPGP 2.6.3 CNANDOR
+::PBar RdpO Control Progress Bar 1.0.1 CNANDOR
+
+
+Mac::Comm::
+::OT_PPP RdpO Control Open Transport PPP / Remote Access CNANDOR
+
+
+Mac::FileSpec::
+::Unixish Mdpf Unixish-compatability in filespecs SBURKE
+
+
+Mac::OSA::
+::Simple Rdph Simple access to Mac::OSA CNANDOR
+
+
+MSDOS::
+
+
+MVS::
+
+
+NeXTStep::
+
+
+Netware::
+
+
+OS2::
+
+
+SGI::
+
+
+Solaris::
+::MapDev bdpf Maps sdNN disk names to cNtNdN disk names ABURLISON
+
+
+Unix::
+::UserAdmin Rdpf Interface to Unix Account Information JZAWODNY
+
+
+VMS::
+
+
+PDA::
+
+
+Hardware::
+
+
+Device::
+
+
+Device::ISDN::
+
+
+Socket::
+
+
+Net::
+::DummyInetd RdpO A dummy Inetd server GBARR
+::Goofey RdpO Communicate with a Goofey server GOSSAMER
+::Hotline RdpO Interface to the Hotline protocol JSIRACUSA
+::Ident RdpO Performs ident (rfc1413) lookups JPC
+::Netmask RdpO Understand and manipulate network blocks MUIR
+::Netrc adpO Support for .netrc files GBARR
+::PH RdpO CCSO Nameserver Client class GBARR
+::Ping SupO TCP and ICMP ping RMOSE
+::Printer RdpO Direct to lpd printing CFUHRMAN
+::Syslog RdpO Forwarded syslog protocol LHOWARD
+::Telnet RdpO Interact with TELNET port or other TCP ports JROGERS
+::Pager RdpO Send Numeric/AlphaNumeric Pages to any pager ROOTLEVEL
+::Whois RdpO Get+parse "whois" domain data from InterNIC DHUDES
+::XWhois RdpO Whois Client Interface for Perl5. VIPUL
+
+
+Net::Daemon::
+::SSL RdpO SSL extension for Net::Daemon MKUL
+
+
+Net::IMAP::
+
+
+Net::SNMP::
+::Interfaces RdpO Obtain network interface info via SNMP JSTOWE
+
+
+Net::Telnet::
+::Cisco RdpO Net::Telnet wrapper for Cisco devices JOSHUA
+
+
+NetAddr::
+::IP RdpO Manipulation and operations on IP addresses LUISMUNOZ
+
+
+IPC::
+::LDT Rdpf Implements a length based IPC protocol JSTENZEL
+::Locker RdpO Shared semaphore locks across a network WSNYDER
+::Open2 Supf Open a process for both reading and writing P5P
+::Open3 Supf Like IPC::Open2 but with error handling P5P
+::SharedCache Rmpr Manage a cache in SysV IPC shared memory SAMTREGAR
+::Signal Rdpf Translate signal names to/from numbers ROSCH
+
+
+RPC:: Remote Procedure Calls (see also DCE::RPC)
+::PlServer RdpO Interface for building Perl Servers JWIED
+::PlClient RdpO Interface for building pServer Clients JWIED
+
+
+DCE:: Distributed Computing Environment (OSF)
+
+
+NetPacket::
+
+
+Proxy::
+
+
+IPChains::
+
+
+SNMP::
+::Util RdpO Perform SNMP set,get,walk,next,walk_hash,... WMARQ
+
+
+Mon::
+::Client RdpO Network monitoring client TROCKIJ
+::SNMP RdpO Network monitoring suite TROCKIJ
+
+
+Parallel::
+::ForkManager RdpO A simple parallel processing fork manager DLUX
+
+
+CORBA::
+
+
+Modem::
+::VBox RdpO Perl module for creation of voiceboxes MLEHMANN
+
+
+ControlX10::
+::CM10 RmpO Control unit for X10 modules BBIRTH
+::CM17 RmpO inexpensive RF transmit-only X10 BBIRTH
+
+
+RAS::
+::PortMaster RdpO Interface to Livingston PortMaster STIGMATA
+::AS5200 RdpO Interface to Cisco AS5200 dialup server STIGMATA
+::HiPerARC RdpO Interface to 3Com TotalControl HiPerARC STIGMATA
+
+
+Math::
+::Amoeba Rdpr Multidimensional Function Minimisation JARW
+::BaseCalc RdpO Convert numbers between various bases KWILLIAMS
+::BigFloat SupO Arbitrary size floating point math package MARKB
+::BigInt SupO Arbitrary size integer math package MARKB
+::Brent Rdpr One-dimensional Function Minimisation JARW
+::Complex SdpO Complex number data type RAM
+::Derivative Rdpr 1st and 2nd order differentiation of data JARW
+::Fortran Rdpf Implements Fortran log10 & sign functions JARW
+::Interpolate Rdpr Polynomial interpolation of data MATKIN
+::Logic RdpO Provides pure 2, 3 or multi-value logic SUMMER
+::MatrixReal RdpO Everything you ever wanted to do with Matr. STBEY
+::Polynomial RdpO Polynomials as objects MATKIN
+::Round RdpO Perl extension for rounding numbers GROMMEL
+::SigFigs Rdpf Math using scientific significant figures SBECK
+::Spline RdpO Cubic Spline Interpolation of data JARW
+::VecStat Rdpr Some basic numeric stats on vectors ASPINELLI
+
+
+Math::Business::
+
+
+Statistics::
+::ChiSquare Rdpf Chi Square test - how random is your data? JONO
+::ConwayLife RdpO Simulates life using Conway's algorithm DANB
+::Descriptive RdpO Descriptive statistical methods COLINK
+::LTU RdpO Implements Linear Threshold Units TOMFA
+::MaxEntropy Rdpf Maximum Entropy Modeling TERDOEST
+::Distributions RdpO Perl module for calculating critical values MIKEK
+
+
+Algorithm::
+::Diff Rdpf Diff (also Longest Common Subsequence) NEDKONZ
+
+
+Algorithm::Graphs::
+::TransitiveClosure RdpO Calculates the transitive closure ABIGAIL
+
+
+Algorithm::Numerical::
+::Shuffle Rdph Knuth's shuffle algorithm ABIGAIL
+
+
+PDL::
+::Options Rdph Provides hash options handling for PDL TJENNESS
+
+
+Quantum::
+::Superpositions RdpO QM-like superpositions in Perl DCONWAY
+
+
+Array::
+::Compare RdpO Class to compare two arrays DAVECROSS
+::IntSpan RdpO Handling arrays using IntSpan techniques TEVERETT
+::Reform RdpO Convert an array into N-sized array of array TBONE
+
+
+Hash::
+
+
+Heap::
+
+
+Heap::Elem::
+
+
+Scalar::
+
+
+List::
+
+
+Bit::
+
+
+Set::
+::Bag RdpO Bag (multiset) class JHI
+::NestedGroups RdpO Grouped data eg ACL's, city/state/country ABARCLAY
+
+
+Graph::
+::Element RdpO Base class for element of directed graph NEILB
+::Node RdpO A node in a directed graph NEILB
+::Edge RdpO An edge in a directed graph NEILB
+::Kruskal Rdpf Kruskal Algorithm for Minimal Spanning Trees STBEY
+
+
+Decision::
+
+
+Date::
+::Format Rdpf Date formatter ala strftime GBARR
+::Manip Rdpf Complete date/time manipulation package SBECK
+::Parse Rdpf ASCII Date parser using regexp's GBARR
+
+
+Time::
+::Avail Rdpf Calculate min. remaining in time interval PSANTORO
+::CTime Rdpf Format Times ala ctime(3) with many formats MUIR
+::DaysInMonth Rdpf Returns the number of days in a month MUIR
+::JulianDay Rdpf Converts y/m/d into seconds MUIR
+::Local Supf Implements timelocal() and timegm() P5P
+::ParseDate Rdpf Parses many forms of dates and times MUIR
+::Period Rdpf Code to deal with time periods PRYAN
+::Timezone Rdpf Figures out timezone offsets MUIR
+::Zone Rdpf Timezone info and translation routines GBARR
+::gmtime Supf A by-name interface for gmtime TOMC
+::localtime Supf A by-name interface for localtime TOMC
+
+
+Calendar::
+
+
+Tie::
+::Hash Supr Base class for implementing tied hashes P5P
+::Scalar Supr Base class for implementing tied scalars P5P
+::Array Supr Base class for implementing tied arrays P5P
+::Cache Mdpr In memory size limited LRU cache CHAMAS
+::DB_FileLock Rdpr Locking access to Berkeley DB 1.x. JMV
+::DB_Lock Rdpr Tie DB_File with automatic locking KWILLIAMS
+::DBI RdpO Tie hash to a DBI handle LDS
+::Discovery Rdpr Discover data by caching sub results SIMON
+::Handle RdpO Base class for implementing tied filehandles STBEY
+::IxHash RdpO Indexed hash (ordered array/hash composite) GSAR
+::LLHash Rdpr Fast ordered hashes via linked lists KWILLIAMS
+::ListKeyedHash Rdpr Use lists to key multi-level hashes SNOWHARE
+::Persistent Rdpr Persistent data structures via tie RGIERSIG
+::RDBM RdpO Tie hashes to relational databases LDS
+::SecureHash RdpO Enforced encapsulation of Perl objects DCONWAY
+::SortHash Rdpr Provides persistent sorting for hashes CTWETEN
+::SubstrHash SdpO Very compact hash stored in a string LWALL
+::TextDir Rdpr ties a hash to a directory of textfiles KWILLIAMS
+::Cycle RdpO Cycle through a list of values via a scalar. BDFOY
+
+
+Tie::Scalar::
+
+
+Tie::Cache::
+
+
+Class::
+::Eroot RdpO Eternal Root - Object persistence DMR
+::Multimethods Rdpf A multiple dispatch mechanism for Perl DCONWAY
+::NamedParms MdpO A named parameter accessor base class SNOWHARE
+::ParmList MdpO A named parameter list processor SNOWHARE
+::Template Rdpr Struct/member template builder DMR
+::Translucent RdpO Translucent (ala perltootc) method creation GED
+::Tree MdpO C++ class hierarchies & disk directories RSAVAGE
+::TOM RmpO Transportable Object Model for perl JDUNCAN
+::Contract RdpO Design-by-Contract OO in Perl. DCONWAY
+::WhiteHole RdpO Treat unhandled method calls as errors MSCHWERN
+::BlackHole RdpO treat unhandled method calls as no-op SBURKE
+::Classless MdpO Framework for classless OOP SBURKE
+::ISA Mdpf Report the search path thru an ISA tree SBURKE
+
+
+Object::
+::Info Rupf General info about objects (is-a, ...) JACKS
+
+
+POE:: Perl Object Environment
+::Kernel RdpO An event queue that dispatches events RCAPUTO
+::Session RdpO state machine running on POE::Kernel events RCAPUTO
+
+
+POE::Component::
+
+
+Sort::
+::Versions Rdpf sorting of revision (and similar) numbers KJALB
+
+
+Persistence::
+
+
+Marshal::
+
+
+Persistent::
+
+
+Data::
+::Dumper RdpO Convert data structure into perl code GSAR
+::Flow RdpO Acquire data based on recipes ILYAZ
+::Locations RdpO Insert data into other data w/o temp files STBEY
+::Reporter RdcO Ascii Report Generator RVAZ
+::Walker RdpO Navigate through Perl data structures JNOLAN
+::JavaScript RdpO Dumps structures into JavaScript code SCHOP
+
+
+Tree::
+::Nary RdpO Perl implementation of N-ary search trees FSORIANO
+::DAG_Node MdpO base class for trees SBURKE
+
+
+DFA::
+::Command MdpO Discrete Finite Automata command processor RSAVAGE
+
+
+DBIx::
+::Abstract RmpO Wrapper for DBI that generates SQL TURNERA
+::Password MdpO Abstration layer for database passwords KROW
+
+
+DBD::
+
+
+Oraperl Rmpf Oraperl emulation interface for DBD::Oracle DBIML
+
+
+Ingperl bmpf Ingperl emulation interface for DBD::Ingres HTOUG
+
+
+DDL::
+
+
+MSSQL::
+::Sqllib MdpO High-level interface using MSSQL::DBlib. SOMMAR
+
+
+Sybase::
+::Sybperl Rdpf sybperl 1.0xx compatibility module MEWP
+
+
+MLDBM::
+
+
+DB_File::
+::Lock RdpO DB_File wrapper with flock-based locking DHARRIS
+
+
+DBM::
+
+
+AsciiDB::
+
+
+Db::
+
+
+DbFramework::
+
+
+BTRIEVE::
+
+
+MARC::
+
+
+Metadata::
+
+
+OLE::
+
+
+Spectrum::
+::CLI RdpO API for Spectrum Enterprise Mgr. CLI PLONKA
+
+
+Spreadsheet::
+::ParseExcel RdpO Get information from Excel file KWITKNR
+
+
+X500::
+::DN MdpO X500 Distinguished Name parser RSAVAGE
+
+
+Term::
+::ANSIColor Sdpf Color output using ANSI escape sequences RRA
+::Cap Supf Basic termcap: Tgetent, Tputs, Tgoto TSANDERS
+::Complete Supf Tab word completion using stty raw WTOMPSON
+::Query Rdpf Intelligent user prompt/response driver AKSTE
+::Screen RdpO Basic screen + input class (uses Term::Cap) MRKAE
+
+
+Term::ReadLine::
+::Perl RdpO GNU Readline history and completion in Perl ILYAZ
+
+
+Curses::
+::Widgets Rdpf Assorted widgets for rapid interfaces CORLISS
+
+
+Emacs::
+
+
+Tk::
+::Axis RmpO Canvas with Axes TKML
+::CheckBox RdpO A radio button widget that uses a checkmark DKWILSON
+::ChildNotification RdpO Alert widget when child is created DKWILSON
+::Clock RdpO Canvas based Clock widget HMBRAND
+::Cloth RdpO Object interface to Tk::Canvas and items ACH
+::Columns RdpO Multi column lists w/ resizable borders DKWILSON
+::ComboEntry RdpO Drop down list + entry widget DKWILSON
+::Dial RmpO An alternative to the Scale widget TKML
+::FileDialog RdpO A highly configurable file selection widget BPOWERS
+::FireButton RdpO Keeps invoking callback when pressed ACH
+::IconCanvas RdpO Canvas with movable iconic interface DKWILSON
+::LockDisplay RdpO Screen saver/lock widget with animation LUSOL
+::Menustrip RdpO Another MenuBar DKWILSON
+::NumEntry RdpO Numerical entry widget with up/down buttons ACH
+::Olwm RmpO Interface to OpenLook toplevels properties TKML
+::Pane RdpO A Frame that can be scrolled TKML
+::ProgressBar RdpO Status/progress bar TKML
+::RotCanvas RdpO Canvas with arbitrary rotation support AQUMSIEH
+::SplitFrame RdpO A sliding separator for two child widgets DKWILSON
+::TabFrame RdpO A tabbed frame geometry manager DKWILSON
+::TabbedForm RdpO Ext. TabFrame, allowing managed subwidgets DKWILSON
+::TableEdit RdpO Simplified interface to a flat file database DKWILSON
+::TiedListbox RmpO Gang together Listboxes TKML
+::TFrame RdpO A Frame with a title ACH
+::Tree RdpO Create and manipulate Tree widgets CTDEAN
+::TreeGraph RdpO Widget to draw a tree in a Canvas DDUMONT
+::WaitBox RdpO A Wait dialog, of the "Please Wait" variety BPOWERS
+
+
+Log::Dispatch::
+::ToTk RdpO Interface class between Log::Dispatch and Tk DDUMONT
+::TkText RdpO Text widget to log Log::Dispatch messages DDUMONT
+
+
+Puppet::
+
+
+Puppet::VcsTools::
+
+
+Gtk::
+
+
+X11::
+
+
+GUI::
+
+
+C::
+::Scan RdpO Heuristic parse of C files ILYAZ
+
+
+Language::
+
+
+Fortran::
+
+
+ShellScript::
+
+
+Verilog::
+::Language Rdpf Language support, number parsing, etc WSNYDER
+::Parser RdpO Language parsing WSNYDER
+::SigParser RdpO Signal and module extraction WSNYDER
+
+
+FFI::
+
+
+FFI::Win32::
+
+
+Python::
+
+
+File::
+::Basename Supf Return basename of a filename P5P
+::CheckTree Supf Check file/dir tree against a specification P5P
+::Compare Supf Compare file contents quickly P5P
+::CounterFile RdpO Persistent counter class GAAS
+::Find Supf Call func for every item in a directory tree P5P
+::Flock Mdph flock() wrapper. Auto-create locks MUIR
+::Listing Rdpf Parse directory listings GAAS
+::Path Supf File path and name utilities P5P
+::Remote Rdph Read/write/edit remote files transparently NWIGER
+::Slurp Mdpf Read/write/append files quickly MUIR
+::Sort Rdpf Sort a file or merge sort multiple files CNANDOR
+::chmod Mdpf Allows for symbolic chmod notation PINYAN
+::stat Supf A by-name interface for the stat function TOMC
+::BasicFlock Rdpf Simple flock() wrapper MUIR
+
+
+File::Searcher::
+
+
+Dir::
+::Purge Rdpf Delete files in directory based on timestamp JV
+
+
+Filesys::
+::Df Rdpr Disk free based on Filesys::Statvfs IGUTHRIE
+::Ext2 Rdpf Interface to e2fs filesystem attributes JPIERCE
+
+
+LockFile:: Application-level locking facilities
+
+
+Stat::
+::lsMode Rdpf Translate mode 0644 to -rw-r--r-- MJD
+
+
+String::
+::Approx Rdpf Approximate string matching and substitution JHI
+::RexxParse Rdph Perl implementation of REXX 'parse' command BLCKSMTH
+::Scanf Rdpf Implementation of C sscanf function JHI
+::ShellQuote Rdpf Quote string for safe passage through shells ROSCH
+::Random RdpO Perl module to generate random strings based STEVE
+
+
+Text::
+::Abbrev Supf Builds hash of all possible abbreviations P5P
+::Bib RdpO Module moved to Text::Refer ERYQ
+::DelimMatch RdpO Match (possibly nested) delimited strings NWALSH
+::FillIn RdpO Fill-in text templates KWILLIAMS
+::Format RdpO Advanced paragraph formatting GABOR
+::Graphics RdpO Graphics rendering toolkit with text output SFARRELL
+::ParseWords Supf Parse strings containing shell-style quoting HALPOM
+::Refer RdpO Parse refer(1)-style bibliography files ERYQ
+::Tabs Sdpf Expand and contract tabs ala expand(1) MUIR
+::Templar RdpO An object-oriented templating system GED
+::Template MdpO Expand template text with embedded perl MJD
+::Vpp RdpO Versatile text pre-processor DDUMONT
+::Wrap Sdpf Wraps lines to make simple paragraphs MUIR
+
+
+Text::Wrap::
+
+
+Other Text:: modules (these should be under String:: but pre-date it)
+
+
+Text::
+::Balanced Mdpf Extract balanced-delimiter substrings DCONWAY
+
+
+Text::
+
+
+Lingua::
+::Ident RdpO Statistical language identification MPIOTR
+::Stem Rdph Word stemmer with localization SNOWHARE
+
+
+Lingua::
+
+
+Lingua::EN::
+::Fathom RdpO Readability measurements of English text KIMRYAN
+::Hyphenate Rdpf Syllable based hyphenation DCONWAY
+::Infinitive MdpO Find infinitive of a conjugated word RSAVAGE
+::Inflect Mdpf English singular->plural and "a"->"an" DCONWAY
+::NameCase Rdpf Convert NAMES and names to Correct Case SUMMER
+::NameParse RdpO Manipulate persons name KIMRYAN
+
+
+Lingua::EN::Numbers::
+::Ordinate Rdpf go from cardinal (53) to ordinal (53rd) SBURKE
+
+
+Lingua::RU::
+
+
+PostScript::
+::Font RdpO analyzes PostScript font files JV
+::FontInfo RdpO analyzes Windows font info files JV
+::FontMetrics RdpO analyzes Adobe Font Metric files JV
+::Resources RdpO loads Unix PostScript Resources file JV
+
+
+Font::
+::AFM RdpO Parse Adobe Font Metric files GAAS
+::TFM RdpO Read info from TeX font metric files JANPAZ
+::Fret RdpO Fret - Font REporting Tool MHOSKEN
+
+
+Number::
+::Format RdpO Package for formatting numbers for display WRW
+
+
+Number::Phone::
+::US Rdpf Validates several US phone number formats KENNEDYH
+
+
+Email::
+
+
+Parse::
+::RecDescent MdpO Recursive descent parser generator DCONWAY
+::Yapp RdpO Generates OO LALR parser modules FDESAR
+::YALALR RdpO Yet Another LALR parser SFINK
+
+
+Search::
+::Dict Supf Search a dictionary ordered text file P5P
+::InvertedIndex RdpO Inverted index database support SNOWHARE
+::Binary Rdpf Generic binary search RANT
+
+
+SGML::
+::Parser RdpO SGML instance parser EHOOD
+::Entity RdpO An entity defined in an SGML or XML document KMACLEOD
+
+
+XML::
+::AutoWriter RdpO DOCTYPE based XML output RBS
+::Catalog RdpO Resolve public identifiers and remap system EBOHLMAN
+::Doctype RdpO A DTD object class RBS
+::Element RdpO XML elements with the same interface as HTML SBURKE
+::Grove RmpO Flexible lightweight mid-level XML objects KMACLEOD
+::PPD RdpO PPD file format and XML parsing elements MURRAY
+::PYX RdpO XML to PYX generator MSERGEANT
+::TreeBuilder RdpO Build a tree of XML::Element objects SBURKE
+::XPath RdpO A set of modules for parsing and evaluating MSERGEANT
+
+
+Frontier::
+
+
+RDF::
+
+
+RTF::
+
+
+SQL::
+
+
+TeX::
+::DVI RdpO Methods for writing DVI (DeVice Independent) JANPAZ
+::Hyphen RdpO Hyphenate words using TeX's patterns JANPAZ
+
+
+FrameMaker::
+
+
+Chatbot::
+::Eliza RdpO Eliza algorithm encapsulated in an object JNOLAN
+
+
+Quiz::
+
+
+Barcode::
+
+
+Getopt::
+::ArgvFile Rdpf Take options from files JSTENZEL
+::Declare MdpO An easy-to-use WYSIWYG command-line parser DCONWAY
+::EvaP Mdpr Long/short options, multilevel help LUSOL
+::Long Sdpr Advanced handling of command line options JV
+::Mixed Rdpf Supports both long and short options CJM
+::Simple MdpO A simple-to-use interface to Getopt::Long RSAVAGE
+::Std Supf Implements basic getopt and getopts P5P
+
+
+Getargs::
+
+
+App:: General application development tools
+
+
+Config::
+
+
+I18N::
+::Charset Rdpf Character set names and aliases MTHURN
+::Collate Sdpr Locale based comparisons JHI
+::LangTags Mdpf compare & extract language tags (RFC1766) SBURKE
+
+
+Locale::
+::Country Rdpf ISO 3166 two letter country codes NEILB
+::Language Rdpf ISO 639 two letter language codes NEILB
+::SubCountry RdpO ISO 3166-2 two letter subcountry codes KIMRYAN
+::Maketext RdpO Framework for software localization SBURKE
+::PO RdpO Manipulate .po entries from gettext ALANSZ
+
+
+Unicode::
+::MapUTF8 Rdpf Conversions to and from arbitrary charsets SNOWHARE
+
+
+No::
+::Dato Rdpf Norwegian stuff GAAS
+::KontoNr Rdpf Norwegian stuff GAAS
+::PersonNr Rdpf Norwegian stuff GAAS
+::Sort Rdpf Norwegian stuff GAAS
+::Telenor Rdpf Norwegian stuff GAAS
+
+
+Cz::
+::Cstocs RdpO Charset reencoding JANPAZ
+::Sort RdpO Czech sorting JANPAZ
+
+
+Geography::
+::States Rdp? Map states and provinces to their codes ABIGAIL
+
+
+Sort::
+::ArbBiLex Mdpf sort functions for arbitrary sort orders SBURKE
+
+
+User::
+
+
+PGP::
+
+
+GnuPG::
+::Interface RdpO OO interface to GNU Privacy Guard FTOBIN
+
+
+Digest::
+::HMAC Rdph HMAC message integrity check GAAS
+
+
+Crypt::
+::Beowulf Rdpf An original, very fast encryption algorithm SIFUKURT
+::OTP Rdpf Implements One Time Pad encryption SIFUKURT
+::RC4 Rdpf Implements the RC4 encryption algorithm SIFUKURT
+::Solitaire Rdpf A very simple encryption system SIFUKURT
+::Twofish Rdpf Twofish Encryption Algorothm NISHANT
+::UnixCrypt Rdpf Perl-only implementation of crypt(3) MVORL
+::RandPasswd RdpO Random password generator based on FIPS-181 JDPORTER
+::TripleDES RdpO Triple DES encyption. VIPUL
+::ECB Mdph ECB mode for Crypt::DES, Blowfish, etc. APPEL
+
+
+Authen::
+
+
+RADIUS::
+
+
+URI::
+::Escape Rmpf General URI escaping/unescaping functions LWWWP
+::URL RmpO Uniform Resource Locator objects LWWWP
+
+
+CGI::
+::Application RmpO Framework for building reusable web-apps JERLBAUM
+::Authent Mdpf request the HTTP authentification JENDA
+::Base RmpO Complete HTTPD CGI Interface class CGIP
+::BasePlus RmpO Extra CGI::Base methods (incl file-upload) CGIP
+::Debug Mdph show CGI debugging data JONAS
+::Deurl Mdpr decode the CGI parameters JENDA
+::Enurl Mdpr encode the CGI parameters JENDA
+::Formalware MdpO Convert an XML file to a suite of CGI forms RSAVAGE
+::Imagemap Rdph Imagemap handling for specialized apps MIKEH
+::LogCarp Rdph Error, log, bug streams, httpd style format MIKEKING
+::MiniSvr RmpO Fork CGI app as a per-session mini server CGIP
+::Minimal MdpO A micro-sized CGI handler SNOWHARE
+::PathInfo RdpO A lightweight PATH_INFO based CGI package SNOWHARE
+::QuickForm Rdpf Handles UI & validation for CGI forms SUMMER
+::Request RmpO Parse CGI request and handle form fields CGIP
+::WML RdpO Subclass of CGI.pm for WML output AWOOD
+
+
+HTML::
+::CalendarMonth RmpO Calendar Months as easy HTML::Element trees MSISK
+::Element RdpO Representation of a HTML parsing tree SBURKE
+::ElementGlob RmpO Manipulate multiple HTML elements as one MSISK
+::ElementRaw RmpO Graft HTML strings onto an HTML::Element MSISK
+::ElementSuper RmpO Various HTML::Element extensions MSISK
+::ElementTable RmpO Tables as easy HTML element structures MSISK
+::Entities Rmpf Encode/decode HTML entities LWWWP
+::HeadParser RmpO Parse <HEAD> section of HTML documents LWWWP
+::LinkExtor RmpO Extract links from HTML documents LWWWP
+::SimpleParse RdpO Bare-bones HTML parser KWILLIAMS
+::Stream RdpO HTML output stream ERYQ
+::Table RupO Write HTML tables via spreadsheet metaphor AJPEACOCK
+::TableExtract RmpO Flexible HTML table extraction MSISK
+::Template MmpO a simple HTML templating system SAMTREGAR
+::TokeParser RmpO Alternative HTML::Parser interface LWWWP
+::Tagset Rdpf data tables useful in parsing HTML SBURKE
+
+
+HTML::Widgets::
+::DateEntry RdpO Creates date entry widgets for HTML forms. KENNEDYH
+::Menu RdpO Builds an HTML menu FRANKIE
+::Search RdpO Perl module for building searches returning FRANKIE
+
+
+HTTP::
+::Cookies RmpO Storage of cookies LWWWP
+::Daemon RmpO Base class for simple HTTP servers LWWWP
+::Date Rmpf Date conversion for HTTP date formats LWWWP
+::Headers RmpO Class encapsulating HTTP Message headers LWWWP
+::Message RmpO Base class for Request/Response LWWWP
+::Negotiate Rmpf HTTP content negotiation LWWWP
+::Request RmpO Class encapsulating HTTP Requests LWWWP
+::Response RmpO Class encapsulating HTTP Responses LWWWP
+::Status Rmpf HTTP Status code processing LWWWP
+
+
+HTTP::Request::
+::Common Rmpf Functions that generate HTTP::Requests LWWWP
+::Form RdpO Generates HTTP::Request objects out of forms GBAUER
+
+
+WAP::
+
+
+WML::
+::Card RdpO Builds WML code for different wap browsers MALVARO
+::Deck RdpO WML Deck generator MALVARO
+
+
+HTTPD::
+
+
+WWW::
+
+
+WWW::Search::
+::AlltheWeb RdpO Class for searching AlltheWeb JSMYSER
+::Deja RdpO Class for www.deja.com searching MTHURN
+::Go RdpO Backend class for searching with go.com ALIAN
+
+
+LWP::
+::MediaTypes Rmpf Media types and mailcap processing LWWWP
+::Parallel RmpO Allows parallel http and ftp access with LWP MARCLANG
+::Protocol RmpO LWP support for URL schemes (http, file etc) LWWWP
+::RobotUA RmpO A UserAgent for robot applications LWWWP
+::Simple Rmpf Simple procedural interface to libwww-perl LWWWP
+::UserAgent RmpO A WWW UserAgent class LWWWP
+
+
+MIME::
+::QuotedPrint Rdpf Encode/decode Quoted-Printable GAAS
+::Decoder RdpO OO interface for decoding MIME messages ERYQ
+::Entity RdpO An extracted and decoded MIME entity ERYQ
+::Head RdpO A parsed MIME header ERYQ
+::Lite RdpO Single module for composing simple MIME msgs ERYQ
+::Parser RdpO Parses streams to create MIME entities ERYQ
+::Words Rdpf Encode/decode RFC1522-escaped header strings ERYQ
+
+
+MIME::Lite::
+
+
+Apache::
+::CallHandler cdpf Map filenames to subroutine calls GKNOPS
+::Filter RdpO OutputChain like functionality KWILLIAMS
+::PerlRun Smpf Run unaltered CGI scripts APML
+::PrettyPerl Rdpf Syntax highlighting for Perl files RA
+::Registry Smpf Run unaltered CGI scripts APML
+::Reload RdpO Reload changed modules (extending StatINC) MSERGEANT
+::SSI RmpO Implement server-side includes in Perl KWILLIAMS
+::Stage Rdpf Manage a document staging directory ANDK
+::ePerl Rdpr Fast emulated Embedded Perl (ePerl) RSE
+
+
+Apache::
+
+
+Apache::
+::AuthCookie RdpO Authen + Authz via cookies KWILLIAMS
+
+
+Apache::
+
+
+Apache::
+
+
+Apache::
+
+
+Apache::
+
+
+Apache::
+
+
+Apache::
+
+
+Apache::
+::Resource Smpf Limit resources used by httpd children APML
+
+
+Apache::
+::PerlSections SmpO Utilities for <Perl> sections APML
+::src SmpO Finding and reading bits of source APML
+
+
+Apache::
+
+
+Apache::Sybase::
+
+
+Apache::
+::ExtUtils SmpO Utils for Apache:C/Perl glue APML
+
+
+Apache::
+
+
+Apache::
+::SizeLimit Smpf Graceful exit for large children APML
+::GTopLimit Rdpn Child exit on small shared or large mem STAS
+::Status Smpf Embedded interpreter runtime status APML
+::VMonitor Rdpn Visual System and Processes Monitor STAS
+
+
+Apache::Watchdog::
+::RunAway Rdpn RunAway processes watchdog/terminator STAS
+
+
+Apache::
+::Debug Rmpf mod_perl debugging utilities APML
+::StatINC Smpf Reload require'd files when updated APML
+::test Smpf Handy routines for 'make test' scripts APML
+
+
+Apache::
+::Include Smpf mod_include + Apache::Registry handler APML
+::RegistryLoader SmpO Apache::Registry startup script loader APML
+::SIG SmpO Signal handlers for mod_perl APML
+
+
+Netscape::
+
+
+HyperWave::
+
+
+WebFS::
+::FileCopy Rdpf Get, put, copy, delete files located by URL BZAJAC
+
+
+WebCache::
+
+
+FCGI::
+
+
+Event::
+::Functions Rupf Utility functions for initializing servers JACKS
+::Gettimeofday Rupr gettimeofday syscall wrapper JACKS
+::Signal Rupr signalhandler for the eventserver JACKS
+
+
+Server::Server::
+::EventDriven RupO See 'EventServer' (compatibility maintained) JACKS
+
+
+Server::Echo::
+
+
+Server::Inet::
+
+
+Server::FileQueue::
+
+
+Server::Mail::
+
+
+NetServer::
+::Generic RdpO generic OOP class for internet servers CHSTROSS
+
+
+Time::
+
+
+Spool::
+
+
+Compress::
+
+
+Convert::
+::Recode Rdpf Mapping functions between character sets GAAS
+::Translit MdpO String conversion among many character sets GENJISCH
+
+
+AppleII::
+
+
+Archive::
+::Zip RdpO Provides an interface to ZIP archive files NEDKONZ
+
+
+RPM::
+
+
+GIFgraph RdpO Obsolete, see GD::Graph MVERB
+
+
+GD::
+::Graph RdpO Create charts using GD MVERB
+::Text RdpO Classes for string handling with GD MVERB
+
+
+VRML::
+::VRML1 RdpO VRML methods with the VRML 1.0 standard HPALM
+::VRML2 RdpO VRML methods with the VRML 2.0 standard HPALM
+::Color Rdpf color functions and X11 color names HPALM
+::Base RdpO common basic methods HPALM
+
+
+Graphics::
+
+
+Image::
+::Grab RdpO Grabbing images off the Internet MAHEX
+::ParseGIF RdpO Parse GIF images into component parts BENL
+::Size Rdpf Measure size of images in common formats RJRAY
+::Info RdpO Extract meta information from image files GAAS
+
+
+Chart::
+::Base RdpO Business chart widget collection NINJAZ
+::Graph Rmpr front-end to gnuplot and XRT MHYOUNG
+::PNGgraph RdpO Package to generate PNG graphs, uses GD.pm SBONDS
+::XMGR Rdph interface to XMGR plotting package TJENNESS
+
+
+Xmms::
+
+
+Flash::
+
+
+Mail::
+::Audit RdpO Toolkit for constructing mail filters SIMON
+::Field RdpO Base class for handling mail header fields GBARR
+::Freshmeat RdpO Parses newsletters from http://freshmeat.net ASPIERS
+::Header RdpO Manipulate mail RFC822 compliant headers GBARR
+::POP3Client RdpO Support for clients of POP3 servers SDOWD
+::Procmail Rdpf Procmail-like facility for creating easy mai JV
+::Sender MdpO socket() based mail with attachments, SMTP JENDA
+::Sendmail Rdpf Simple platform independent mailer MIVKOVIC
+::IMAPClient RdpO An IMAP Client API DJKERNEN
+
+
+Mail::Field::
+::Received RdpO Parses Received headers as per RFC822 ASPIERS
+
+
+News::
+::NNTPClient bdpO Support for clients of NNTP servers RVA
+
+
+NNTP::
+::Server i Support for an NNTP server JOEHIL
+
+
+NNML::
+
+
+IMAP::
+::Admin RdpO IMAP Administration EESTABROO
+
+
+Sendmail::
+
+
+Hook::
+
+
+Memoize::
+::ExpireLRU Rdpr Provide LRU Expiration for Memoize BPOWERS
+
+
+IO::
+::AtomicFile RdpO Write a file which is updated atomically ERYQ
+::Lines RdpO I/O handle to read/write to array of lines ERYQ
+::React RdpO OO Expect-like communication GARROW
+::Scalar RdpO I/O handle to read/write to a string ERYQ
+::ScalarArray RdpO I/O handle to read/write to array of scalars ERYQ
+::Tee RdpO Multiplex output to multiple handles KENSHAN
+::Wrap RdpO Wrap old-style FHs in standard OO interface ERYQ
+::WrapTie RdpO Tie your handles & retain full OO interface ERYQ
+
+
+Log::
+::Dispatch RdpO Log messages to multiple outputs DROLSKY
+::Topics Rdpf Control flow of topic based logging messages JARW
+::TraceMessages Rdpf Print developer's trace messages EDAVIS
+
+
+Log::Agent::
+
+
+Win32::
+::ASP Rdpr Makes PerlScript ASP development easier WNODOM
+::AbsPath Rdpf relative paths to absolute, understands UNCs JENDA
+::FileOp Mdpf file operations + fancy dialogs, INI files JENDA
+::FileType RdpO modify Win32 fily type mapping JENDA
+::RASE Rdpf Dialup entries and connections on Win32 MBLAZ
+::SerialPort RdpO Win32 Serial functions/constants/interface BBIRTH
+::SystemInfo RdpO Memory and Processor information CJOHNSTON
+
+
+Win32API::
+::CommPort RdpO Win32 Serial functions/constants/interface BBIRTH
+
+
+AI::
+::Fuzzy RdpO Perl extension for Fuzzy Logic SABREN
+::NeuralNet RdpO A simple back-prop neural net JBRYAN
+
+
+Astro::
+::Coord Rdpf Transform telescope and source coordinates CPHIL
+::Misc Rdpf Miscellaneous astronomical routines CPHIL
+::MoonPhase Rdpf Information about the phase of the Moon. RPIKKARA
+::Time Rdpf General time conversions for Astronomers CPHIL
+::Sunrise RdpO Computes sunrise/sunset for a given day RKHILL
+
+
+Audio::
+
+
+Audio::Play::
+
+
+MPEG::
+::ID3v1Tag MdpO ID3v1 MP3 Tag Reader/Writer SVANZOEST
+
+
+MP3::
+
+
+BarCode::
+
+
+Business::
+::CreditCard Rdpf Credit card number check digit test JONO
+::ISBN RdpO Work with ISBN as objects BDFOY
+::OnlinePayment RdpO Ecommerce middleware JASONK
+::US_Amort Mdph US-style loan amortization calculations SBURKE
+
+
+Chemistry::
+::Elements RdpO Working with Chemical Elements BDFOY
+
+
+Cisco::
+
+
+FAQ::
+::OMatic RdpO A CGI-based FAQ/help database maintainer JHOWELL
+
+
+Finance::
+::Quote RmpO Fetch stock prices over the Internet PJF
+
+
+Games::
+::Alak Rdpf a simple gomoku-like game SBURKE
+::Dissociate Mdpf a Dissociated Press algorithm and filter SBURKE
+::Worms RdpO A life simulator for Conway/Patterson worms SBURKE
+
+
+Geo::
+::METAR Rdpf Process Aviation Weather (METAR) Data JZAWODNY
+::WeatherNOAA Rdpf Current/forecast weather from NOAA MSOLOMON
+
+
+HP200LX::
+
+
+LEGO::
+
+
+MIDI::
+
+
+Penguin::
+::Easy RdpO Provides quick, easy access to Penguin API JDUNCAN
+
+
+Psion::
+
+
+Remedy::
+
+
+Router::
+
+
+Schedule:: See also Schedule:: in chapter 4
+
+
+Silly::
+
+
+SyslogScan::
+
+
+Video::Capture::
+
+
+Watchdog::
+
+
+Resolute::
+
+
+AltaVista::
+
+
+Real::
diff --git a/doc/devel/memo/99modlist.txt b/doc/devel/memo/99modlist.txt
new file mode 100644
index 00000000..446c9239
--- /dev/null
+++ b/doc/devel/memo/99modlist.txt
@@ -0,0 +1,3481 @@
+The Perl 5 Module List
+
+Maintained by Tim Bunce and Andreas König <modules@perl.org>;
+$Revision$ $Date$ -*- coding:utf-8 -*-
+
+Contents
+
+Introduction
+Where Are The Modules Kept?
+Playing Your Part
+How To Get a More Recent Copy of the List
+Editorial Information and Copyright
+
+Part 1 - Modules: Creation, Use and Abuse
+
+1) Perl 5 Module Terminology
+2) Guidelines for Module Creation
+3) Guidelines for Converting Perl 4 Library Scripts into Modules
+4) Guidelines for Reusing Application Code
+5) Namespace Coordination
+
+Part 2 - The Perl 5 Module List
+
+1) Module Listing Format
+2) Perl Core Modules, Perl Language Extensions and Documentation Tools
+3) Development Support
+4) Operating System Interfaces, Hardware Drivers
+5) Networking, Device Control (modems) and InterProcess Communication
+6) Data Types and Data Type Utilities
+7) Database Interfaces
+8) User Interfaces
+9) Interfaces to or Emulations of Other Programming Languages
+10) File Names, File Systems and File Locking (see also File Handles)
+11) String Processing, Language Text Processing, Parsing and Searching
+12) Option, Argument, Parameter and Configuration File Processing
+13) Internationalization and Locale
+14) Authentication, Security and Encryption
+15) World Wide Web, HTML, HTTP, CGI, MIME
+16) Server and Daemon Utilities
+17) Archiving, Compression and Conversion
+18) Images, Pixmap and Bitmap Manipulation, Drawing and Graphing
+19) Mail and Usenet News
+20) Control Flow Utilities (callbacks and exceptions etc)
+21) File Handle, Directory Handle and Input/Output Stream Utilities
+22) Microsoft Windows Modules
+23) Miscellaneous Modules
+24) Interface Modules to Commercial Software
+
+Part 3 - Big Projects Registry
+
+1) Items in the Todo File
+2) Multi-threading
+3) Object Management Group CORBA & IDL
+4) Expand Tied Array Interface
+5) Extend Yacc To Write XS Code
+6) Approximate Matching Regular Expressions
+
+Part 4 - Standards Cross-reference
+
+4.1) IETF - Internet Engineering Task Force (RFCs)
+4.2) ITU - International Telegraph Union (X.*)
+4.3) ISO - International Standards Organization (ISO*)
+
+Part 5 - Who's Who and What's Where
+
+5.1) Information / Contact Reference Details
+5.2) Perl Frequently Asked Questions (FAQ) Files
+
+ ------------------------------------------------------------------------
+
+Introduction
+
+This document is a semi-formal list of Perl 5 Modules. The Perl 4 concept of
+packages has been extended in Perl 5 and a new standardised form of reusable
+software component has been defined: the Module.
+
+Perl 5 Modules typically conform to certain guidelines which make them
+easier to use, reuse, integrate and extend.
+
+This list has two key aims:
+
+ * FOR DEVELOPERS: To change duplication of effort into cooperation.
+ * FOR USERS: To quickly locate existing software which can be reused.
+
+This list includes the Perl 5 standard modules, other completed modules,
+work-in-progress modules and would-be-nice-to-have ideas for modules. It
+also includes guidelines for those wishing to create new modules including
+how to name them.
+
+Where Are The Modules Kept?
+
+Most, but not all, of the modules can be found within CPAN, the
+Comprehensive Perl Archive Network of mirrored FTP sites. Within the CPAN
+scheme the modules described in this list can be found in the modules/
+directory below the CPAN root directory. CPAN is a worlswide network of
+mirrors and you can find your closest mirror in the file
+http://www.cpan.org/SITES.html
+
+NOTE: If you can't find what you want, or wish to check that what you've
+found is the latest version, or wonder why a module mentioned in this list
+is not on CPAN, you should contact the person associated with the module
+(and not the maintainers of the archives or this list). Contact details are
+given at the start of Part 5.
+
+Playing Your Part
+
+Perl is a huge collaborative effort. Everyone who uses perl is benefiting
+from the contributions of many hundreds, maybe thousands, of people. How
+much time has perl saved you since you started using it?
+
+Do you have any modules you could share with others? For example, you may
+have some perl4 scripts from which generally useful, and reusable, modules
+could be extracted. There may be many people who would find your work very
+useful. Please play your part and contribute to the Perl community where you
+can. [ end of sermon :-]
+
+Help save the world! Please submit new entries and updates to us so we can
+keep this list up-to-date. Send the new or corrected entry by email to
+modules@perl.org . Please do not send code to this address. Instead upload
+your module, once registered, to the PAUSE site for forwarding on to CPAN.
+See section 2, especially 2.6 and 2.11.
+
+How To Get a More Recent Copy of the List
+
+This Module List is fed into CPAN on a semi-regular basis. Its relative path
+within a CPAN mirror is in modules/00modlist.long.html .
+
+Editorial Information and Copyright
+
+This document is Copyright (c) 1997-2000 by Tim Bunce and Andreas König.
+All rights reserved. Permission to distribute this document, in full or
+part, via electronic means (emailed, posted or archived) or printed copy is
+granted providing that no charges are involved, reasonable attempt is made
+to use the most current version, and all credits and copyright notices are
+retained. Requests for other distribution rights, including incorporation in
+commercial products, such as books, magazine articles, or CD-ROMs should be
+made to Tim.Bunce@ig.co.uk and Andreas.Koenig@mind.de .
+
+Disclaimer: The content of this document is simply a collection of
+information gathered from many sources with little or no checking. There are
+NO warranties with regard to this information or its use.
+
+A little background information... I (Tim) created the Module List in August
+1994 and maintained it manually till April 1996. By that time Andreas had
+implemented the Perl Authors Upload Server (PAUSE) and it was happily
+feeding modules through to the CPAN archive sites (see
+http://www.cpan.org/modules/04pause.html for details). Since PAUSE held a
+database of module information which could be maintained by module authors
+it made sense for the module listing part of the Module List to be built
+from that database. In April 1996 Andreas took over the automatic posting of
+the Module List and I now maintain the other parts of the text. We plan to
+add value to the automation over time.
+
+Part 1 - Modules: Creation, Use and Abuse
+
+1) Perl 5 Module Terminology
+
+Perl 5 implements a class using a package, but the presence of a package
+doesn't imply the presence of a class. A package is just a namespace. A
+class is a package that provides subroutines that can be used as methods. A
+method is just a subroutine that expects, as its first argument, either the
+name of a package (for "static" methods), or a reference to something (for
+"virtual" methods).
+
+A module is a file that (by convention) provides a class of the same name
+(sans the .pm), plus an import method in that class that can be called to
+fetch exported symbols. This module may implement some of its methods by
+loading dynamic C or C++ objects, but that should be totally transparent to
+the user of the module. Likewise, the module might set up an AUTOLOAD
+function to slurp in subroutine definitions on demand, but this is also
+transparent. Only the .pm file is required to exist.
+
+2) Guidelines for Module Creation
+
+2.1 Do similar modules already exist in some form?
+
+If so, please try to reuse the existing modules either in whole or by
+inheriting useful features into a new class. If this is not practical try to
+get together with the module authors to work on extending or enhancing the
+functionality of the existing modules. A perfect example is the plethora of
+packages in perl4 for dealing with command line options.
+
+If you are writing a module to expand an already existing set of modules,
+please coordinate with the author of the package. It helps if you follow the
+same naming scheme and module interaction scheme as the original author.
+
+2.2 Try to design the new module to be easy to extend and reuse.
+
+Use blessed references. Use the two argument form of bless to bless into the
+class name given as the first parameter of the constructor, e.g.:
+
+ sub new { my $class = shift; return bless {}, $class; }
+
+or even this if you'd like it to be used as either a static or a virtual
+method.
+
+ sub new { my $self = shift; my $class = ref($self) || $self;
+ return bless {}, $class; }
+
+Pass arrays as references so more parameters can be added later (it's also
+faster). Convert functions into methods where appropriate. Split large
+methods into smaller more flexible ones. Inherit methods from other modules
+if appropriate.
+
+Avoid class name tests like: die "Invalid" unless ref $ref eq 'FOO'.
+Generally you can delete the "eq 'FOO'" part with no harm at all. Let the
+objects look after themselves! If it's vital then you can use the UNIVERSAL
+methods isa and can. Generally, avoid hardwired class names as far as
+possible.
+
+Avoid $r->Class::func() where using @ISA=qw(... Class ...) and $r->func()
+would work (see perlbot man page for more details).
+
+Use autosplit or the SelfLoader module so little used or newly added
+functions won't be a burden to programs which don't use them. Add test
+functions to the module after __END__ either using autosplit or by saying:
+
+ eval join('',<main::DATA>) || die $@ unless caller();
+
+Does your module pass the 'empty sub-class' test? If you say "@SUBCLASS::ISA
+= qw(YOURCLASS);" your applications should be able to use SUBCLASS in
+exactly the same way as YOURCLASS. For example, does your application still
+work if you change: $obj = new YOURCLASS; into: $obj = new SUBCLASS; ?
+
+Avoid keeping any state information in your packages. It makes it difficult
+for multiple other packages to use yours. Keep state information in objects.
+
+Always use -w. Try to "use strict;" (or "use strict qw(...);"). Remember
+that you can add "no strict qw(...);" to individual blocks of code which
+need less strictness. Always use -w. Always use -w! Follow the guidelines in
+the perlstyle(1) manual.
+
+2.3 Some simple style guidelines
+
+The perlstyle manual supplied with perl has many helpful points.
+
+Coding style is a matter of personal taste. Many people evolve their style
+over several years as they learn what helps them write and maintain good
+code. Here's one set of assorted suggestions that seem to be widely used by
+experienced developers:
+
+Use underscores to separate words. It is generally easier to read
+$var_names_like_this than $VarNamesLikeThis, especially for non-native
+speakers of English. It's also a simple rule that works consistently with
+VAR_NAMES_LIKE_THIS.
+
+Package/Module names are an exception to this rule. Perl informally reserves
+lowercase module names for 'pragma' modules like integer and strict. Other
+modules normally begin with a capital letter and use mixed case with no
+underscores (need to be short and portable).
+
+You may find it helpful to use letter case to indicate the scope or nature
+of a variable. For example:
+
+ $ALL_CAPS_HERE constants only (beware clashes with perl vars)
+ $Some_Caps_Here package-wide global/static $no_caps_here function
+ scope my() or local() variables
+
+Function and method names seem to work best as all lowercase. E.g.,
+$obj->as_string().
+
+You can use a leading underscore to indicate that a variable or function
+should not be used outside the package that defined it.
+
+For method calls use either
+
+ $foo = new Foo $arg1, $arg2; # no parentheses $foo =
+ Foo->new($arg1, $arg2);
+
+but avoid the ambiguous form
+
+ $foo = new Foo($arg1, $arg2); # Foo() looks like function call
+
+It can be very helpful if the names of the classes that your module uses can
+be specified as parameters. Consider:
+
+ $dog_class = $args{dog_class} || 'Dog'; $spot =
+ $dog_class->new(...);
+
+This allows the user of your module to specify an alternative class
+(typically a subclass of the one you would normally have used).
+
+On how to report constructor failure, Larry said:
+
+I tend to see it as exceptional enough that I'll throw a real Perl exception
+(die) if I can't construct an object. This has a couple of advantages right
+off the bat. First, you don't have to check the return value of every
+constructor. Just say "$fido = new Doggie;" and presume it succeeded. This
+leads to clearer code in most cases.
+
+Second, if it does fail, you get a better diagnostic than just the
+undefinedness of the return value. In fact, the exception it throws may be
+quite rich in "stacked" error messages, if it's rethrowing an exception
+caught further in.
+
+And you can always catch the exception if it does happen using eval {}.
+
+If, on the other hand, you expect your constructor to fail a goodly part of
+the time, then you shouldn't use exceptions, but you should document the
+interface so that people will know to check the return value. You don't need
+to use defined(), since a constructor would only return a true reference or
+a false undef. So good Perl style for checking a return value would simply
+say
+
+ $conn = new Connection $addr or die "Couldn't create Connection";
+
+In general, make as many things meaningful in a Boolean context as you can.
+This leads to straightforward code. Never write anything like
+
+ if (do_your_thing() == OK)
+
+in Perl. That's just asking for logic errors and domain errors. Just write
+
+ if (do_your_thing())
+
+Perl is designed to help you eschew obfuscation, if that's your thing.
+
+2.4 Select what to export.
+
+Do NOT export method names! Do NOT export anything else by default without a
+good reason!
+
+Exports pollute the namespace of the module user. If you must export try to
+use @EXPORT_OK in preference to @EXPORT and avoid short or common names to
+reduce the risk of name clashes.
+
+Generally anything not exported is still accessible from outside the module
+using the ModuleName::item_name (or $blessed_ref->method) syntax. By
+convention you can use a leading underscore on names to informally indicate
+that they are 'internal' and not for public use.
+
+(It is actually possible to get private functions by saying: my $subref =
+sub { ... }; &$subref; But there's no way to call that directly as a method,
+since a method must have a name in the symbol table.)
+
+As a general rule, if the module is trying to be object oriented then export
+nothing. If it's just a collection of functions then @EXPORT_OK anything but
+use @EXPORT with caution.
+
+2.5 Select a name for the module.
+
+This name should be as descriptive, accurate and complete as possible. Avoid
+any risk of ambiguity. Always try to use two or more whole words. Generally
+the name should reflect what is special about what the module does rather
+than how it does it.
+
+Having 57 modules all called Sort will not make life easy for anyone (though
+having 23 called Sort::Quick is only marginally better :-). Imagine someone
+trying to install your module alongside many others. If in any doubt ask for
+suggestions in comp.lang.perl.modules or modules@perl.org .
+
+Please use a nested module name to informally group or categorise a module,
+e.g., placing a sorting module into a Sort:: category. A module should have
+a very good reason not to have a nested name. Please avoid using more than
+one level of nesting for module names (packages or classes within modules
+can, of course, use any number).
+
+Module names should begin with a capital letter. Lowercase names are
+reserved for special modules such as pragmas (e.g., lib and strict).
+
+Note that module names are not related to class hierarchies. A module name
+Foo::Bar does not in any way imply that Foo::Bar inherits from Foo. Nested
+names are simply used to provide some useful categorisation for humans. The
+same is generally true for all package names.
+
+Since the CPAN is huge and growing daily, it's essential that module authors
+choose names which lend themselves to browsing. That means minimizing
+acronyms, cute names, and jargon. Also, don't make up a new top level
+category unless you have a good reason; please choose an already-existing
+category when possible. Send mail to modules@perl.org before you upload, so
+we can help you select a name.
+
+If you insist on a name that we consider inappropriate, we won't prevent you
+from uploading your module -- but it'll remain in your "author" directory
+and won't be directly visible from CPAN/modules/by-module.
+
+We appreciate the efforts of the contributors who have helped make the CPAN
+the world's largest reusable code repository. Please help us enhance it by
+working with us to choose the best name possible.
+
+If you are developing a suite of related modules/classes it's good practice
+to use nested classes with a common prefix as this will avoid namespace
+clashes. For example: Xyz::Control, Xyz::View, Xyz::Model etc. Use the
+modules in this list as a naming guide.
+
+If adding a new module to a set, follow the original author's standards for
+naming modules and the interface to methods in those modules.
+
+If developing modules for private internal or project specific use, that
+will never be released to the public, then you should ensure that their
+names will not clash with any future public module. You can do this either
+by using the reserved Local::* category or by using an underscore in the top
+level name like Foo_Corp::*.
+
+To be portable each component of a module name should be limited to 11
+characters. If it might be used on DOS then try to ensure each is unique in
+the first 8 characters. Nested modules make this easier.
+
+2.6 Have you got it right?
+
+How do you know that you've made the right decisions? Have you picked an
+interface design that will cause problems later? Have you picked the most
+appropriate name? Do you have any questions?
+
+The best way to know for sure, and pick up many helpful suggestions, is to
+ask someone who knows. The comp.lang.perl.modules Usenet newsgroup is read
+by just about all the people who develop modules and it's generally the best
+place to ask first. If you need more help then try modules@perl.org .
+
+All you need to do is post a short summary of the module, its purpose and
+interfaces. A few lines on each of the main methods is probably enough. (If
+you post the whole module it might be ignored by busy people - generally the
+very people you want to read it!)
+
+Don't worry about posting if you can't say when the module will be ready -
+just say so in the message. It might be worth inviting others to help you,
+they may be able to complete it for you!
+
+2.7 README and other Additional Files.
+
+It's well known that software developers usually fully document the software
+they write. If, however, the world is in urgent need of your software and
+there is not enough time to write the full documentation please at least
+provide a README file containing:
+
+ * A description of the module/package/extension etc.
+ * A copyright notice - see below.
+ * Prerequisites - what else you may need to have.
+ * How to build it - possible changes to Makefile.PL etc.
+ * How to install it.
+ * Recent changes in this release, especially incompatibilities
+ * Changes / enhancements you plan to make in the future.
+
+If the README file seems to be getting too large you may wish to split out
+some of the sections into separate files: INSTALL, Copying, ToDo etc.
+
+2.8 Adding a Copyright Notice.
+
+How you choose to licence your work is a personal decision. The general
+mechanism is to assert your Copyright and then make a declaration of how
+others may copy/use/modify your work.
+
+Perl, for example, is supplied with two types of licence: The GNU GPL and
+The Artistic License (see the files README, Copying and Artistic). Larry has
+good reasons for NOT just using the GNU GPL.
+
+My personal recommendation, out of respect for Larry, Perl and the perl
+community at large is to simply state something like:
+
+ Copyright (c) 1997 Your Name. All rights reserved. This program is
+ free software; you can redistribute it and/or modify it under the
+ same terms as Perl itself.
+
+This statement should at least appear in the README file. You may also wish
+to include it in a Copying file and your source files. Remember to include
+the other words in addition to the Copyright.
+
+2.9 Give the module a version/issue/release number.
+
+To be fully compatible with the Exporter and MakeMaker modules you should
+store your module's version number in a non-my package variable called
+$VERSION. This should be a valid floating point number with at least two
+digits after the decimal (ie hundredths, e.g, $VERSION = "0.01"). See
+Exporter.pm for details.
+
+Don't use a "1.3.2" style version directly. If you use RCS or a similar
+system which supports multilevel versions/branches you can use this (but put
+it all on one line for MakeMaker VERSION_FROM):
+
+$VERSION = do { my @r=(q$Revision$=~/\d+/g); sprintf
+"%d."."%02d"x$#r,@r };
+
+It may be handy to add a function or method to retrieve the number. Use the
+number in announcements and archive file names when releasing the module
+(ModuleName-1.02.tar.gz). See perldoc ExtUtils::MakeMaker.pm for details.
+
+2.10 Listing Prerequisites in a Bundle module
+
+If your module needs some others that are available on CPAN, you might
+consider creating a 'bundle' module that lists all the prerequisites in a
+standardized way. Automatic installation software such as the CPAN.pm module
+can take advantage of such a listing and enable your users to install all
+prerequisites and your own module with one single command. See the CPAN.pm
+module for details.
+
+2.11 How to release and distribute a module.
+
+By far the best way to release modules is to register yourself with the Perl
+Authors Upload Server (PAUSE). By registering with PAUSE you will be able to
+easily upload (or mirror) your modules to the PAUSE server from where they
+will be mirrored to CPAN sites across the planet.
+
+It's good idea to post an announcement of the availability of your module to
+the comp.lang.perl.announce Usenet newsgroup. This will at least ensure very
+wide once-off distribution.
+
+If not using PAUSE you should place the module into a major ftp archive and
+include details of it's location in your announcement. Some notes about ftp
+archives: Please use a long descriptive file name which includes the version
+number. Most incoming directories will not be readable/listable, i.e., you
+won't be able to see your file after uploading it. Remember to send your
+email notification message as soon as possible after uploading else your
+file may get deleted automatically. Allow time for the file to be processed
+and/or check the file has been processed before announcing its location.
+
+FTP Archives for Perl Modules:
+
+Follow the instructions and links on
+
+http://www.cpan.org/modules/04pause.html
+
+or upload to:
+
+ftp://pause.kbx.de/incoming
+
+and notify upload@pause.kbx.de .
+
+By using the PAUSE WWW interface you can ask the Upload Server to mirror
+your modules from your ftp or WWW site into your own directory on CPAN.
+Please remember to send us an updated entry for the Module list!
+
+2.12 Take care when changing a released module.
+
+Always strive to remain compatible with previous released versions (see 2.2
+above) Otherwise try to add a mechanism to revert to the old behaviour if
+people rely on it. Document incompatible changes.
+
+3) Guidelines for Converting Perl 4 Library Scripts into Modules
+
+3.1 There is no requirement to convert anything.
+
+If it ain't broke, don't fix it! Perl 4 library scripts should continue to
+work with no problems. You may need to make some minor changes (like
+escaping non-array @'s in double quoted strings) but there is no need to
+convert a .pl file into a Module for just that. See perltrap.pod for details
+of all known perl4-to-perl5 issues.
+
+3.2 Consider the implications.
+
+All the perl applications which make use of the script will need to be
+changed (slightly) if the script is converted into a module. Is it worth it
+unless you plan to make other changes at the same time?
+
+3.3 Make the most of the opportunity.
+
+If you are going to convert the script to a module you can use the
+opportunity to redesign the interface. The 'Guidelines for Module Creation'
+above include many of the issues you should consider.
+
+3.4 The pl2pm utility will get you started.
+
+This utility will read *.pl files (given as parameters) and write
+corresponding *.pm files. The pl2pm utilities does the following:
+
+ * Adds the standard Module prologue lines
+ * Converts package specifiers from ' to ::
+ * Converts die(...) to croak(...)
+ * Several other minor changes
+
+Being a mechanical process pl2pm is not bullet proof. The converted code
+will need careful checking, especially any package statements. Don't delete
+the original .pl file till the new .pm one works!
+
+4) Guidelines for Reusing Application Code
+
+4.1 Complete applications rarely belong in the Perl Module Library.
+
+4.2 Many applications contain some perl code which could be reused. Help
+save the world! Share your code in a form that makes it easy to reuse.
+
+4.3 Break-out the reusable code into one or more separate module files.
+
+4.4 Take the opportunity to reconsider and redesign the interfaces.
+
+4.5 In some cases the 'application' can then be reduced to a small fragment
+of code built on top of the reusable modules. In these cases the application
+could invoked as:
+
+5) Namespace Coordination
+
+The maintainers of the module list are not the Internic for perl namespaces.
+They do neither sell namespaces nor can they establish property rights. What
+they try to do is to minimize namespace clashes and maximize usablility of
+the CPAN archive by setting up a catalogue of modules and control the
+indexers. Time permitting, they will also try to give advice for what they
+think is a proper usage of the namespace.
+
+It is an important part of the namespace concept that the module list
+maintainers do not guarantee to you that somebody else won't use the, say,
+Foo::Bar namespace. The upload area is not censored except for abuse. People
+are free to upload any modules they like. Instead, there are several levels
+of protection for your namespaces:
+
+a) The most important is the module list which actually lists and proclaims
+your namespace.
+
+b) The second is the indexing mechanism of the CPAN. Modules are indexed on
+a first-come-first-serve basis. The module namespace that is uploaded for
+the first time ever gets indexed, but not the module of the second one who
+tries to use the same namespace.
+
+c) As the whole process is trying to benefit the community, all parties are
+subject to a wider monitoring within the community. This is sometimes
+referred to as security by visibility.
+
+d) So the next level of namespace protection is the common sense. Your own
+common sense. Help to save the world. If you get the impression that
+something goes wrong with regard to namespaces, please write to
+modules@perl.org and let them know.
+
+e) The perhaps most interesting namespace protection is provided by the perl
+symbol table itself. A namespace Foo:: is just a package name and its
+relationship to a namespace Foo::Bar:: is not predetermined whatsoever. The
+two namespaces can be closely or loosely related or not related at all, but
+what's most important, they can be writen by different authors who may work
+rather independently from each other. So if you have registered any
+namespace, it does not mean that you own the whole namespace tree that
+starts there. If you are registered as the contact for Foo::Bar, you are not
+necessarily also associated with Foo::Bar::Baz.
+
+f) In a few rare cases the module list people restrict indexing of certain
+categories. For example: DBI::* under the control of Tim Bunce Sun::* under
+the control of Sun Microsystems
+
+Part 2 - The Perl 5 Module List
+
+The remainder of this document is divided up into sections. Each section
+deals with a particular topic and lists all known modules related to that
+topic. Modules are only listed in one section so check all sections that
+might related to your particular needs.
+
+All the information corresponds to the latest updates we have received. We
+don't record the version number or release dates of the listed Modules. Nor
+do we record the locations of these Modules. Consult the contact, try the
+usual perl CPAN sites or ask in comp.lang.perl.modules. Please do *not* ask
+us directly, we simply don't have the time. Sorry.
+
+1) Module Listing Format
+
+Each Module listing is very short. The main goal is to simply publish the
+existence of the modules, or ideas for modules, and enough contact
+information for you to find out more. Each listing includes some characters
+which convey (approximate) basic status information.
+
+For example:
+
+Name DSLI Description Info
+------------- ---- -------------------------------------------- -----
+Fcntl Sdcf Defines fcntl() constants (see File::Lock) JHI
+
+Where the 'DSLI' characters have the following meanings:
+
+ * D - Development Stage (Note: *NO IMPLIED TIMESCALES*):
+ *
+ o i - Idea, listed to gain consensus or as a placeholder
+ o c - under construction but pre-alpha (not yet released)
+ o a/b - Alpha/Beta testing
+ o R - Released
+ o M - Mature (no rigorous definition)
+ o S - Standard, supplied with Perl 5
+
+ * S - Support Level:
+ *
+ o m - Mailing-list
+ o d - Developer
+ o u - Usenet newsgroup comp.lang.perl.modules
+ o n - None known, try comp.lang.perl.modules
+
+ * L - Language Used:
+ *
+ o p - Perl-only, no compiler needed, should be platform independent
+ o c - C and perl, a C compiler will be needed
+ o h - Hybrid, written in perl with optional C code, no compiler
+ needed
+ o + - C++ and perl, a C++ compiler will be needed
+ o o - perl and another language other than C or C++
+
+ * I - Interface Style
+ *
+ o f - plain Functions, no references used
+ o h - hybrid, object and function interfaces available
+ o n - no interface at all (huh?)
+ o r - some use of unblessed References or ties
+ o O - Object oriented using blessed references and/or inheritance
+
+Where letters are missing they can usually be inferred from the others. For
+example 'i' implies 'id', 'S' implies 'Su'.
+
+The Info column gives a contact reference 'tag'. Lookup this tag in the
+"Information / Contact Reference Details" section in Pert 3 of this
+document. If no contact is given always try asking in
+comp.lang.perl.modules.
+
+Most Modules are nested in categories such as IPC::Open2 and IPC::Open3.
+These are shown as 'IPC::' on one line then each module listed below with a
+'::' prefix.
+
+Ideas For Adoption
+
+Modules listed as in the 'i' Development Stage with no contact reference are
+ideas without an owner. Feel free to 'adopt' these but please let me know so
+that we can update the list and thus inform anyone else who might be
+interested. Adoption simply means that you either hope to implement the
+module one day or would like to cooperate with anyone else who might be
+interested in implementing it.
+
+Cooperation
+
+Similarly, if an idea that interests you has been adopted by someone please
+contact them so you can share ideas. Just because an idea has been adopted
+does NOT imply that it's going to be implemented. Just because a module is
+listed and being implemented does NOT mean it'll get finished. Waiting
+silently in the hope that the Module will appear one day is unlikely to be
+fruitful! Offer to help. Cooperate. Pool your efforts. Go on, try it!
+
+The same applies to modules in all states. Most modules are developed in
+limited spare time. If you're interested in a module don't just wait for it
+to happen, offer to help.
+
+Module developers should feel free to announce incomplete work early. If
+you're not going to be able to spend much time on something then say so. If
+you invite cooperation maybe someone will implement it for you!
+
+2) Perl Core Modules, Perl Language Extensions and Documentation Tools
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+CORE Sucf Internal package for perl native functions P5P
+UNIVERSAL SucO Internal universal base-class JACKS
+SUPER SucO Internal class to access superclass methods P5P
+DynaLoader SucO Dynamic loader for shared libraries P5P
+AutoLoader SupO Automatic function loader (using AutoSplit) P5P
+SelfLoader SdpO Automatic function loader (using __DATA__) JACKS
+Exporter SupO Implements default import method for modules P5P
+Carp Supf Throw exceptions outside current package P5P
+Config Supf Stores details of perl build configuration P5P
+English Supf Defines English names for special variables P5P
+Symbol SupO Create 'anonymous' symbol (typeglobs) refs CHIPS
+Opcode Supf Disable named opcodes when compiling code TIMB
+Taint bdpf Utilities related to tainting PHOENIX
+
+Perl Pragmatic Modules
+
+constant Supf Define compile-time constants P5P
+diagnostics Sdpf For reporting perl diagnostics in full form TOMC
+enum cdpf resemble enumerated types in C ZENIN
+integer Supf Controls float vs. integer arithmetic P5P
+less Supf Controls optimisations (yet unimplemented) P5P
+lib Supf Simple way to add/delete directories in @INC P5P
+overload SdpO Overload perl operators for new data types ILYAZ
+sigtrap Supf For trapping an abort and giving a traceback P5P
+strict Supf Controls averments (similar to pragmas) P5P
+subs Supf use subs qw(x y); is short for sub x; sub y; P5P
+vars Supf predeclare variable names P5P
+
+Experimental pragmatic modules live in the ex:: namespace
+
+ex::
+ex::implements RdpO Study in Polymorphism PDCAWLEY
+ex::interface RdpO Another study in polymorphism PDCAWLEY
+ex::override Rdpf perl pragma to override core functions CTWETEN
+
+ex::constant::
+ex::constant::vars Rdph Perl pragma to create readonly variables CTWETEN
+
+Perl Language Extensions
+
+Alias bdcf Convenient access to data/code via aliases GSAR
+End RdpO Generalized END {}. ABIGAIL
+Error adpO Error/exception handling in an OO-ish way GBARR
+Perl adcO Create Perl interpreters from within Perl GSAR
+Protect bdpf declare subs private or member JDUNCAN
+Regexp adcO An OO interface to regular expressions GBARR
+Safe SdcO Restrict eval'd code to safe subset of ops MICB
+Softref bdcf Extension for weak/soft referenced SVs ILYAZ
+
+Inline adp? Easy way to use other languages in Perl INGY
+Inline::
+Inline::CPR adpn C Perl Run - Embed Perl in C, ala Inline INGY
+Inline::C bdpn Write C extensions in Perl the easy way INGY
+Inline::CPP adpO Easy implementation of C++ extensions NEILW
+Inline::Python adpO Easy implementation of Python extensions NEILW
+
+Exporter::
+Exporter::Import Rdpn Alternate symbol exporter GARROW
+Exporter::Options adpO Extends Exporter to handle use-line options YSTH
+Exporter::PkgAlias adpf Load a module into multiple namespaces JDPORTER
+
+Safe::
+Safe::Hole bdcO Exec subs in the original package from Safe SEYN
+
+Symbol::
+Symbol::Table RdpO OO interface to package symbols GARROW
+
+Test Sdpf Utilities for writing test scripts JPRIT
+Test::
+Test::Cmd RdpO Portable test infrastructure for commands KNIGHT
+Test::Harness Supf Executes perl-style tests P5P
+Test::Unit adpO simple framework for unit testing CLEMBURG
+Test::Suite cdpO tbs HENKE
+Test::Case cdpO tbs HENKE
+
+The Perl Compiler
+
+B aucO The Perl Compiler MICB
+O aucO Perl Compiler frontends MICB
+
+B::
+B::Fathom bdpO Estimate the readability of Perl code KSTAR
+B::Graph bdpr Perl Compiler backend to diagram OP trees SMCCAM
+B::LexInfo bdcO Show info about subroutine lexical variables DOUGM
+B::Size bdcO Measure size of Perl OPs and SVs DOUGM
+B::TerseSize bdpO Info about ops and their (estimated) size DOUGM
+
+Source Code Filters
+
+Filter::Util::
+Filter::Util::Exec bdcf Interface for creation of coprocess Filters PMQS
+Filter::Util::Call bdcf Interface for creation of Perl Filters PMQS
+
+Filter::
+Filter::exec bdcf Filters script through an external command PMQS
+Filter::sh bdcf Filters script through a shell command PMQS
+Filter::cpp bdcf Filters script through C preprocessor PMQS
+Filter::tee bdcf Copies to file perl source being compiled PMQS
+Filter::decrypt bdcf Template for a perl source decryption filter PMQS
+
+Thread support (note that these are experimental, i.e. pre-alpha)
+
+Thread cuhO Manipulate threads in Perl (EXPERIMENTAL) P5P
+
+Thread::
+Thread::Group bdph Wait()-like and grouping functions DSUGAL
+Thread::IO i IO routines DSUGAL
+Thread::Object i OO routines DSUGAL
+Thread::Pool bdpO Worker pools to run Perl code asynchronously MICB
+Thread::Queue cuph Thread-safe queues P5P
+Thread::Semaphore cuph Thread-safe semaphores P5P
+Thread::Signal cuhh A thread which runs signal handlers reliably P5P
+Thread::Specific cuhh Thread-specific keys P5P
+
+Module Support
+
+Module::
+Module::Reload Rdpf Reloads files in %INC based on timestamps JPRIT
+
+Documentation Tools:
+
+Pod::
+Pod::Diff cdpf compare two POD files and report diff IANC
+Pod::HTML cdpr converter to HTML KJALB
+Pod::Index cdpr index generator KJALB
+Pod::Latex cdpr converter to LaTeX KJALB
+Pod::LaTeX bdpO Converts pod to latex with Pod::Parser TJENNESS
+Pod::Lint cdpO Lint-style validator for pod NEILB
+Pod::Lyx adpO A pod to LyX format conversion class RICHARDJ
+Pod::Man cdpr converter to man page KJALB
+Pod::MIF adpO converter to FrameMaker MIF JNH
+Pod::Parser bdpO Base class for parsing pod syntax BRADAPP
+Pod::Pdf bdpf Converter to PDF AJFRY
+Pod::Pod cdpr converter to canonical pod KJALB
+Pod::RTF cdpr converter to RTF KJALB
+Pod::Sdf cdpf converter to SDF IANC
+Pod::Select bdpf Print only selected sections of pod docs BRADAPP
+Pod::Simplify cdpr Common pod parsing code KJALB
+Pod::Texinfo cdpr converter to texinfo KJALB
+Pod::Text Supf convert POD data to formatted ASCII text TOMC
+Pod::Usage bdpf Print Usage messages based on your own pod BRADAPP
+Pod::Rtf RdpO Converter from POD to Rich Text Format PVHP
+Pod::Hlp RdpO Convert POD to formatted VMS Help text PVHP
+Pod::XML RdpO Generate XML from POD MSERGEANT
+Pod::PP idpO A Pod pre-processor RAM
+
+3) Development Support
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+AutoSplit Supf Splits modules into files for AutoLoader P5P
+Benchmark Supf Easy way to time fragments of perl code P5P
+Conjury Rdp? Generic software construction toolset JWOODYATT
+Coy Rdpn Like Carp - only prettier DCONWAY
+FindBin adpf Locate current script bin directory GBARR
+Include adpO Parse C header files for use in XS GBARR
+Make adpO Makefile parsing, and 'make' replacement NI-S
+Usage bupr Type and range checking on subroutine args JACKS
+
+ExtUtils::
+ExtUtils::DynaGlue adcr Methods for generating Perl extension files DOUGM
+ExtUtils::MakeMaker SupO Writes Makefiles for extensions MMML
+ExtUtils::Manifest Supf Utilities for managing MANIFEST files MMML
+ExtUtils::Typemap i xsubpp typemap handling WPS
+ExtUtils::Embed Sdpf Utilities for embedding Perl in C/C++ apps DOUGM
+ExtUtils::F77 RdpO Facilitate use of FORTRAN from Perl/XS code KGB
+
+Carp::
+Carp::Assert adpf Stating the obvious to let the computer know MSCHWERN
+Carp::CheckArgs Rdpf Check subroutine argument types GARROW
+
+Devel::
+Devel::CallerItem RupO 'caller()' Object wrapper + useful methods JACKS
+Devel::CoreStack adpf generate a stack dump from a core file ADESC
+Devel::Coverage adpf Coverage analysis for Perl code RJRAY
+Devel::Datum cdpf Debugging And Tracing Ultimate Module CDE
+Devel::DebugAPI bdpf Interface to the Perl debug environment JHA
+Devel::DebugInit i Create a .gdbinit or similar file JASONS
+Devel::DProf Rdcf Execution profiler DMR
+Devel::DumpStack Rupf Dumping of the current function stack JACKS
+Devel::Leak Rdcf Find perl objects that are not reclaimed NI-S
+Devel::PPPort bdcn Portability aid for your XS code KJALB
+Devel::Peek adcf Peek at internal representation of Perl data ILYAZ
+Devel::RegExp adcO Access perl internal regex functions ILYAZ
+Devel::SmallProf Rdpf Line-by-line profiler ASHTED
+Devel::StackTrace RdpO Stacktrace object w/ info like Carp::confess DROLSKY
+Devel::Symdump RdpO Perl symbol table access and dumping ANDK
+Devel::TraceFuncs adpO Trace funcs by using object destructions JOEHIL
+Devel::TraceLoad Rdpf Traces the loading of perl source code JPRIT
+Devel::Modlist Rdpf Collect module use information RJRAY
+
+Exception::
+Exception::Class bdpO Declare exception class hierarchies DROLSKY
+Exception::Cxx Rd+f Cause perl to longjmp using C++ exceptions JPRIT
+
+Perf:: Performance measurement other than benchmarks
+Perf::ARM adcf Application Response Measurement BBACKER
+
+Rcs adcf Alternate RCS interface (see VCS::RCS) CFRETER
+VCS ampO Generic interface to Version Control Systems LBROCARD
+
+VCS::
+VCS::CVS RdpO Interface to GNU's CVS RSAVAGE
+VCS::PVCS i PVCS Version Manager (intersolv.com) BMIDD
+VCS::RCS idpf Interface layer over RCS (See also Rcs) RJRAY
+VCS::RCE idcf Perl layer over RCE C API RJRAY
+
+ClearCase idcf Environment for ClearCase revision control BRADAPP
+ClearCase::
+ClearCase::Ct Mnpf Generic cleartool wrapper DSB
+
+Sub::
+Sub::Curry Rdpf Perl module to curry functions ((á la Lisp)) DAVIDH
+
+Perlbug RdpO Database driven bug tracking system RFOLEY
+
+Continuus adpO Interface to Continuus Code Management tool HENKE
+
+4) Operating System Interfaces, Hardware Drivers
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Env Supf Alias environment variables as perl vars P5P
+Errno cdpf Constants from errno.h EACCES, ENOENT etc GBARR
+Fcntl Sdcf Defines fcntl() constants (see File::Lock) JHI
+Ioctl adcf ioctl(2) constants JPRIT
+POSIX SupO An interface to most (all?) of POSIX.1 P5P
+Shell Supf Run shell commands transparently within perl P5P
+
+Async::
+Async::Group adpO Deal with simultaneous asynchronous calls DDUMONT
+Async::Process i class to run sub-processes DDUMONT
+
+BSD::
+BSD::HostIdent i s/gethostname(), s/gethostid() JHI
+BSD::Ipfwgen bdpf Generate ipfw(8) filters MUIR
+BSD::Resource Rdcf getrusage(), s/getrlimit(), s/getpriority() JHI
+
+Env::
+Env::Path adpO Advanced operations on path variables DSB
+
+Proc::
+Proc::Background RdpO OS independent background process objects BZAJAC
+Proc::ExitStatus Rdpf Interpret and act on wait() status values ROSCH
+Proc::Forkfunc Rdpf Simple lwall-style fork wrapper MUIR
+Proc::ProcessTable adcO Unix process table information DURIST
+Proc::SafePipe bdpf popen() and `` without calling the shell ROSCH
+Proc::Short adpO System calls with timeout option JHKIM
+Proc::Simple adpO Fork wrapper with objects MSCHILLI
+Proc::Spawn Rdpf Run external programs GARROW
+Proc::SyncExec Rdpf Spawn processes but report exec() errors ROSCH
+Proc::times adpf By-name interface to process times function TOMC
+
+GTop bdcO Perl interface to libgtop DOUGM
+
+Schedule:: See also Schedule:: in chapter 23
+Schedule::At Rd OS independent interface to the at command JOSERODR
+Schedule::ByClock adpO Return at given times SCHAFFTER
+Schedule::Cron adpO cron-like scheduler for perl subroutines ROLAND
+Schedule::Load RdpO Remote system load, processes, scheduling WSNYDER
+
+Quota Rdcf Disk quota system functions, local & remote TOMZO
+
+Sys::
+Sys::AlarmCall Rupf Timeout on any sub. Allows nested alarms JACKS
+Sys::Hostname Supf Implements a portable hostname function P5P
+Sys::Sysconf bdpf Defines constants for POSIX::sysconf() NI-S
+Sys::Syslog Supf Provides same functionality as BSD syslog P5P
+
+ Note: The Sys:: namespace is considered harmful as it is giving no
+ clue about which system. Placing additional modules into this
+ namespace is discouraged.
+
+Platform Specific Modules
+
+Be::
+Be::Attribute Rd+f Manipulate BeOS BFS MIME file attributes TSPIN
+Be::Query Rd+f Query a BeOS file system TSPIN
+
+FreeBSD::
+FreeBSD::SysCalls cdcf FreeBSD-specific system calls GARY
+
+Mac:: Macintosh specific modules
+Mac::AppleEvents bmcO AppleEvent manager and AEGizmos MCPL
+Mac::AssistantFrames RdpO Easy creation of assistant dialogs GBAUER
+Mac::Components bmcO (QuickTime) Component manager MCPL
+Mac::Files bmcO File manager MCPL
+Mac::Gestalt bmcO Gestalt manager: Environment enquiries MCPL
+Mac::Glue bdpO Control apps with AppleScript terminology CNANDOR
+Mac::Macbinary bdpO Decodes MacBinary files. MIYAGAWA
+Mac::Memory bmcO Memory manager MCPL
+Mac::MoreFiles bmcO Further file management routines MCPL
+Mac::OSA bmcO Open Scripting Architecture MCPL
+Mac::Processes bmcO Process manager MCPL
+Mac::Resources bmcO Resource manager MCPL
+Mac::Serial bdpO Interface to Macintosh serial ports DIVERDI
+Mac::Types bmcO (Un-)Packing of Macintosh specific types MCPL
+
+Mac::AppleEvents::
+Mac::AppleEvents::Simple Rdph Simple access to Mac::AppleEvents CNANDOR
+
+Mac::Apps::
+Mac::Apps::Anarchie RdpO Control Anarchie 2.01+ CNANDOR
+Mac::Apps::Launch Rdpf MacPerl module to launch / quit apps CNANDOR
+Mac::Apps::MacPGP RdpO Control MacPGP 2.6.3 CNANDOR
+Mac::Apps::PBar RdpO Control Progress Bar 1.0.1 CNANDOR
+
+Mac::Comm::
+Mac::Comm::OT_PPP RdpO Control Open Transport PPP / Remote Access CNANDOR
+
+Mac::FileSpec::
+Mac::FileSpec::Unixish Mdpf Unixish-compatability in filespecs SBURKE
+
+Mac::OSA::
+Mac::OSA::Simple Rdph Simple access to Mac::OSA CNANDOR
+
+MSDOS::
+MSDOS::Attrib bdcf Get/set DOS file attributes in OS/2 or Win32 CJM
+MSDOS::Descript bdpO Manage 4DOS style DESCRIPT.ION files CJM
+MSDOS::SysCalls adcf MSDOS interface (interrupts, port I/O) DMO
+
+MVS::
+MVS::VBFile bdpf Read MVS VB (variable-length) files GROMMEL
+
+NeXTStep::
+NeXTStep::NetInfo idcO NeXTStep's NetInfo (like ONC NIS) PGUEN
+
+Netware::
+Netware::NDS cd+O Interface to Novell Directory Services KTHOMAS
+Netware::Bindery cd+O Interface to Novell Bindery mode calls KTHOMAS
+
+OS2::
+OS2::ExtAttr RdcO (Tied) access to extended attributes ILYAZ
+OS2::FTP bncf Access to ftplib interface ILYAZ
+OS2::PrfDB RdcO (Tied) access to .INI-style databases ILYAZ
+OS2::REXX RdcO Access to REXX DLLs and REXX runtime ILYAZ
+OS2::UPM bncf User Profile Management ILYAZ
+
+Riscos i Namespace for Risc-OS (Acorn et.al.) RISCOSML
+
+SGI::
+SGI::SysCalls cdcf SGI-specific system calls AMOSS
+SGI::GL adcr SGI's Iris GL library AMOSS
+SGI::FM adcr SGI's Font Management library AMOSS
+SGI::FAM RdcO Interface to SGI/Irix File Access Monitor JGLICK
+
+Solaris::
+Solaris::ACL adch Provides access to ACLs in Solaris IROBERTS
+Solaris::Kmem idcf Read values from the running kernel ABURLISON
+Solaris::Kstat adcO Access kernel performance statistics ABURLISON
+Solaris::MIB idcO Access STREAMS network statistics ABURLISON
+Solaris::MapDev bdpf Maps sdNN disk names to cNtNdN disk names ABURLISON
+Solaris::NDD idcO Access network device statistics ABURLISON
+Solaris::Procfs adhh Access to the Solaris /proc filesystem JNOLAN
+Solaris::InstallDB bdp? Searches for Solaris package/system info CHRISJ
+Solaris::Package bdpO Access a Solaris package pkginfo file CHRISJ
+Solaris::Contents bdp? Access a Solaris contents file CHRISJ
+
+Unix::
+Unix::ConfigFile adpO Abstract interfaces to Unix config files SSNODGRA
+Unix::Processors RdcO Interface to per-processor information WSNYDER
+Unix::Syslog i Interface to syslog functions in a C-library MHARNISCH
+Unix::UserAdmin Rdpf Interface to Unix Account Information JZAWODNY
+
+VMS::
+VMS::Device Rdcr Access info about any device on a VMS system DSUGAL
+VMS::Filespec Sdcf VMS and Unix file name syntax CBAIL
+VMS::ICC bdcr Interface to the ICC facilities in VMS 7.2+ DSUGAL
+VMS::Lock cncO Object interface to $ENQ (VMS lock mgr) BHUGHES
+VMS::Misc Rdcr Miscellaneous VMS utility routines DSUGAL
+VMS::Monitor Rdcr Access VMS system performance info DSUGAL
+VMS::Persona Rdcf Interface to the VMS Persona services DSUGAL
+VMS::Priv Rdcf Access VMS Privileges for processes DSUGAL
+VMS::Process Rdcf Process management on VMS DSUGAL
+VMS::Queue bdcf Manage queues and entries DSUGAL
+VMS::SysCalls i VMS-specific system calls CBAIL
+VMS::System Rdcf VMS-specific system calls DSUGAL
+VMS::User bdcr Read access to system UAF data DSUGAL
+
+Portable Digital Assistants
+
+PDA::
+PDA::Pilot amcO Interface to pilot-link library KJALB
+PDA::PilotDesktop i Managing Pilot Desktop databases software JWIEGLEY
+
+Hardware related modules
+
+Hardware::
+Hardware::Simulator adpf Simulate different pieces of hardware GSLONDON
+
+Device::
+Device::SerialPort bdpO POSIX clone of Win32::SerialPort BBIRTH
+Device::SVGA c SVGA Graphic card driver SCOTTVR
+
+Device::ISDN::
+Device::ISDN::OCLM bd?? Perl interface to the 3com OCLM ISDN TA MERLIN
+
+5) Networking, Device Control (modems) and InterProcess Communication
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Socket Smcf Defines socket-related constants GNAT
+Socket6 adcf getaddrinfo/getnameinfo support module UMEMOTO
+Ptty adcf Pseudo terminal interface functions NI-S
+
+Socket::
+Socket::PassAccessRights adcf Pass file descriptor via Unix domain socket SAMPO
+
+Net::
+Net::ACAP adpO Interface to ACAP Protocol (Internet-Draft) KJOHNSON
+Net::AIM adpO AOL Instant Messenger TOC protocol ARYEH
+Net::AOLIM bdpO AOL Instant Messenger OO Interface (TOC) RWAHBY
+Net::Bind adpO Interface to bind daemon files KJOHNSON
+Net::CDDB cdpr Interface to the CDDB (CD Database) DSTALDER
+Net::Cmd cdpO For command based protocols (FTP, SMTP etc) GBARR
+Net::DLookup adpO Lookup domains on Internic and 2-letter TLDs DJASMINE
+Net::DNS bdpO Interface to the DNS resolver MFUHR
+Net::Daemon adpO Abstract base class for portable servers JWIED
+Net::Dict cdpO Client of Dictionary Server Protocol (DICT) ABIGAIL
+Net::Dnet cdcO DECnet-specific socket usage SPIDB
+Net::Domain adpf Try to determine TCP domain name of system GBARR
+Net::DummyInetd RdpO A dummy Inetd server GBARR
+Net::FTP adpf Interface to File Transfer Protocol GBARR
+Net::Gen RdcO Generic support for socket usage SPIDB
+Net::Goofey RdpO Communicate with a Goofey server GOSSAMER
+Net::Hotline RdpO Interface to the Hotline protocol JSIRACUSA
+Net::ICAP adpO Interface to ICAP Protocol (Internet-Draft) KJOHNSON
+Net::ICB bdpO ICB style chat server interface JMV
+Net::IMAP adpO Interface to IMAP Protocol (RFC2060) KJOHNSON
+Net::IRC cdpO Internet Relay Chat interface DSHEPP
+Net::Ident RdpO Performs ident (rfc1413) lookups JPC
+Net::Inet RdcO Internet (IP) socket usage SPIDB
+Net::Interface adcO ifconfig(1) implementation SRZ
+Net::Jabber ampO Access to the Jabber protocol REATMON
+Net::LDAP adpO Interface to LDAP Protocol (RFC1777) PLDAP
+Net::LDAPapi Rdcf Interface to UMICH and Netscape LDAP C API CDONLEY
+Net::MsgLink cdpO Abstraction of "user" part for message link RAM
+Net::NIS adcO Interface to Sun's NIS RIK
+Net::NISPlus adcO Interface to Sun's NIS+ RIK
+Net::NNTP adpO Client interface to NNTP protocol GBARR
+Net::Netmask RdpO Understand and manipulate network blocks MUIR
+Net::Netrc adpO Support for .netrc files GBARR
+Net::PH RdpO CCSO Nameserver Client class GBARR
+Net::POP3 adpO Client interface to POP3 protocol GBARR
+Net::Patricia RdcO Patricia Trie perl module for fast IP addres PLONKA
+Net::Pcap adcr An interface for LBL's packet capture lib PLISTER
+Net::Ping SupO TCP and ICMP ping RMOSE
+Net::Printer RdpO Direct to lpd printing CFUHRMAN
+Net::SMTP adpf Interface to Simple Mail Transfer Protocol GBARR
+Net::SNMP adpO Interface to SNMP Protocol (RFC1157) GBARR
+Net::SNPP cdpO Client interface to SNPP protocol GBARR
+Net::SOCKS cdcf TCP/IP access through firewalls using SOCKS SCOOPER
+Net::SSLeay bmhf Secure Socket Layer (based on OpenSSL) SAMPO
+Net::Syslog RdpO Forwarded syslog protocol LHOWARD
+Net::TCP RdcO TCP-specific socket usage SPIDB
+Net::TFTP cdpf Interface to Trivial File Transfer Protocol GSM
+Net::Telnet RdpO Interact with TELNET port or other TCP ports JROGERS
+Net::Time adpf Obtain time from remote machines GBARR
+Net::Traceroute bdpO Trace routes HAG
+Net::UDP RdcO UDP-specific socket usage SPIDB
+Net::VNC i??? Interface VNC remote frame buffer protocol BRONG
+Net::hostent adpf A by-name interface for hosts functions TOMC
+Net::netent adpf A by-name interface for networks functions TOMC
+Net::protoent adpf A by-name interface for protocols functions TOMC
+Net::servent adpf A by-name interface for services functions TOMC
+Net::xAP adpO Interface to IMAP,ACAP,ICAP substrate KJOHNSON
+Net::Z3950 adcO OO interface to the Yaz Z39.50 toolkit MIRK
+Net::SSL RdcO Glue that enables LWP to access https URIs CHAMAS
+Net::Pager RdpO Send Numeric/AlphaNumeric Pages to any pager ROOTLEVEL
+Net::Whois RdpO Get+parse "whois" domain data from InterNIC DHUDES
+Net::XWhois RdpO Whois Client Interface for Perl5. VIPUL
+Net::ICQ bmpO Client interface to ICQ messaging JMUHLICH
+
+Net::Daemon::
+Net::Daemon::SSL RdpO SSL extension for Net::Daemon MKUL
+
+Net::IMAP::
+Net::IMAP::Simple bdpO Only implements the basic IMAP features JPAF
+
+Net::SNMP::
+Net::SNMP::Interfaces RdpO Obtain network interface info via SNMP JSTOWE
+
+Net::Telnet::
+Net::Telnet::Cisco RdpO Net::Telnet wrapper for Cisco devices JOSHUA
+
+NetAddr::
+NetAddr::IP RdpO Manipulation and operations on IP addresses LUISMUNOZ
+
+IPC::
+IPC::Cache adpO Shared-memory object cache DCLINTON
+IPC::Chat2 ? Out-of-service during refit! GBARR
+IPC::ChildSafe RdcO Control child process w/o risk of deadlock DSB
+IPC::Globalspace cdpO Multi-process shared hash and shared events JACKS
+IPC::LDT Rdpf Implements a length based IPC protocol JSTENZEL
+IPC::Locker RdpO Shared semaphore locks across a network WSNYDER
+IPC::Mmap i Interface to Unix's mmap() shared memory MICB
+IPC::Open2 Supf Open a process for both reading and writing P5P
+IPC::Open3 Supf Like IPC::Open2 but with error handling P5P
+IPC::Run bdph Child procs w/ piping, redir and psuedo-ttys RBS
+IPC::Session anpO remote shell session mgr; wraps open3() STEVEGT
+IPC::Shareable bdpr Tie a variable to shared memory BSUGARS
+IPC::SharedCache Rmpr Manage a cache in SysV IPC shared memory SAMTREGAR
+IPC::Signal Rdpf Translate signal names to/from numbers ROSCH
+IPC::SysV adcr shared memory, semaphores, messages etc JACKS
+IPC::XPA adch Interface to SAO XPA messaging system DJERIUS
+
+RPC:: Remote Procedure Calls (see also DCE::RPC)
+RPC::PlServer RdpO Interface for building Perl Servers JWIED
+RPC::PlClient RdpO Interface for building pServer Clients JWIED
+RPC::ONC adcO ONC RPC interface (works with perlrpcgen) JAKE
+RPC::Simple adpO Simple OO async remote procedure calls DDUMONT
+
+DCE:: Distributed Computing Environment (OSF)
+DCE::ACL bdcO Interface to Access Control List protocol PHENSON
+DCE::DFS bdcO DCE Distributed File System interface PHENSON
+DCE::Login bdcO Interface to login functions PHENSON
+DCE::RPC c Remote Procedure Calls PHENSON
+DCE::Registry bdcO DCE registry functions PHENSON
+DCE::Status bdpr Make sense of DCE status codes PHENSON
+DCE::UUID bdcf Misc uuid functions PHENSON
+
+NetPacket::
+NetPacket::ARP adpO Address Resolution Protocol TIMPOTTER
+NetPacket::Ethernet adpO Ethernet framed data TIMPOTTER
+NetPacket::IGMP adpO Internet Group Management Protocol TIMPOTTER
+NetPacket::IP adpO Internet Protocol TIMPOTTER
+NetPacket::TCP adpO Transmission Control Protocol TIMPOTTER
+NetPacket::UDP adpO User Datagram Protocol TIMPOTTER
+
+Proxy i Transport-independent remote processing MICB
+Proxy::
+Proxy::Tk ? Tk transport class for Proxy (part of Tk) MICB
+
+Fwctl bmpO Interface to Linux packet filtering firewall FRAJULAC
+LSF cdcO Interface to the Load Sharing Facility API PFRANCEUS
+TFTP bdpO Interface to TFTP (rfc1350) GSM
+ToolTalk adcr Interface to the ToolTalk messaging service MARCP
+
+SOAP cmpO SOAP/Perl language mapping KBROWN
+
+IPChains RdcO Create and Manipulate ipchains JESSICAQ
+IPChains::
+IPChains::PortFW bdpO Interface to ipmasqadm portfw command FRAJULAC
+
+SNMP RdcO Interface to the UCD SNMP toolkit GSM
+SNMP::
+SNMP::Monitor adpO Accounting and graphical display JWIED
+SNMP::Util RdpO Perform SNMP set,get,walk,next,walk_hash,... WMARQ
+
+Mon::
+Mon::Client RdpO Network monitoring client TROCKIJ
+Mon::SNMP RdpO Network monitoring suite TROCKIJ
+
+Parallel::
+Parallel::ForkManager RdpO A simple parallel processing fork manager DLUX
+Parallel::Pvm bdcf Interface to the PVM messaging service DLECONTE
+
+CORBA::
+::IOP::IOR adpO Decode, munge, and re-encode CORBA IORs PHILIPA
+::IOP::IDLtree adpf IDL to symbol tree translator OMKELLOGG
+
+Modem::
+Modem::VBox RdpO Perl module for creation of voiceboxes MLEHMANN
+Modem::Vgetty bdpO Interface to voice modems using vgetty YENYA
+
+ControlX10::
+ControlX10::CM10 RmpO Control unit for X10 modules BBIRTH
+ControlX10::CM17 RmpO inexpensive RF transmit-only X10 BBIRTH
+
+RAS::
+RAS::PortMaster RdpO Interface to Livingston PortMaster STIGMATA
+RAS::AS5200 RdpO Interface to Cisco AS5200 dialup server STIGMATA
+RAS::HiPerARC RdpO Interface to 3Com TotalControl HiPerARC STIGMATA
+
+6) Data Types and Data Type Utilities (see also Database Interfaces)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Math::
+Math::Amoeba Rdpr Multidimensional Function Minimisation JARW
+Math::Approx adpO Approximate x,y-values by a function ULPFR
+Math::BaseCalc RdpO Convert numbers between various bases KWILLIAMS
+Math::BigFloat SupO Arbitrary size floating point math package MARKB
+Math::BigInt SupO Arbitrary size integer math package MARKB
+Math::BigInteger adc Arbitrary size integer as XS extension GARY
+Math::BigRat ? Arbitrary size rational numbers (fractions) MARKB
+Math::Brent Rdpr One-dimensional Function Minimisation JARW
+Math::CDF bdch Cumulative Distribution Functions CALLAHAN
+Math::Cephes adcf Interface to St. Moshier's Cephes library RKOBES
+Math::Complex SdpO Complex number data type RAM
+Math::Derivative Rdpr 1st and 2nd order differentiation of data JARW
+Math::Expr adpO Parses agebraic expressions HAKANARDO
+Math::Fortran Rdpf Implements Fortran log10 & sign functions JARW
+Math::Fourier i Fast Fourier Transforms AQUMSIEH
+Math::Fraction bdpO Fraction Manipulation KEVINA
+Math::Geometry adpf 2D and 3D algorithms GMCCAR
+Math::Integral i Integration of data AQUMSIEH
+Math::Interpolate Rdpr Polynomial interpolation of data MATKIN
+Math::LinearProg idp Linear programming utilities JONO
+Math::Logic RdpO Provides pure 2, 3 or multi-value logic SUMMER
+Math::Matrix adpO Matrix data type (transpose, multiply etc) ULPFR
+Math::MatrixBool RdcO Matrix of booleans (Boolean Algebra) STBEY
+Math::MatrixCplx idpO Matrix data type for Complex Numbers STBEY
+Math::MatrixReal RdpO Everything you ever wanted to do with Matr. STBEY
+Math::Pari adcf Interface to the powerful PARI library ILYAZ
+Math::Polynomial RdpO Polynomials as objects MATKIN
+Math::Prime i Prime number testing GARY
+Math::RandomPrime i Generates random primes of x bits GARY
+Math::Round RdpO Perl extension for rounding numbers GROMMEL
+Math::SigFigs Rdpf Math using scientific significant figures SBECK
+Math::Spline RdpO Cubic Spline Interpolation of data JARW
+Math::Trig bdpf tan asin acos sinh cosh tanh sech cosech JARW
+Math::TrulyRandom i based on interrupt timing discrepancies GARY
+Math::VecStat Rdpr Some basic numeric stats on vectors ASPINELLI
+Math::ematica adcO Interface to the powerful Mathematica system ULPFR
+Math::Libm RdcO Perl extension for the C math library, libm DSLEWART
+
+Math::Business::
+Math::Business::EMA adcO An Exponential Moving Average Calculator JETTERO
+
+Statistics::
+Statistics::ChiSquare Rdpf Chi Square test - how random is your data? JONO
+Statistics::ConwayLife RdpO Simulates life using Conway's algorithm DANB
+Statistics::Descriptive RdpO Descriptive statistical methods COLINK
+Statistics::LTU RdpO Implements Linear Threshold Units TOMFA
+Statistics::MaxEntropy Rdpf Maximum Entropy Modeling TERDOEST
+Statistics::OLS bdpO ordinary least squares (curve fitting) SMORTON
+Statistics::ROC bdpf ROC curves with nonparametric conf. bounds HAKESTLER
+Statistics::Distributions RdpO Perl module for calculating critical values MIKEK
+
+Algorithm::
+Algorithm::Diff Rdpf Diff (also Longest Common Subsequence) NEDKONZ
+Algorithm::Permute bdcO Handy and fast permutation with OO interface EDPRATOMO
+
+Algorithm::Graphs::
+Algorithm::Graphs::TransitiveClosure RdpO Calculates the transitive closure ABIGAIL
+
+Algorithm::Numerical::
+Algorithm::Numerical::Shuffle Rdph Knuth's shuffle algorithm ABIGAIL
+Algorithm::Numerical::Sample RDph Knuth's sample algorithm ABIGAIL
+
+PDL amcf Perl Data Language - numeric analysis env PERLDL
+
+PDL::
+PDL::Audio adch Sound synthesis and editing with PDL MLEHMANN
+PDL::Meschach amcf Links PDL to meschach matrix library EGROSS
+PDL::NetCDF bdhO Reads/Writes NetCDF files from/to PDL objs DHUNT
+PDL::Options Rdph Provides hash options handling for PDL TJENNESS
+PDL::PP amcf Automatically generate C code for PDL PERLDL
+PDL::Slatec amof Interface to slatec (linpack+eispack) lib. PERLDL
+
+Quantum::
+Quantum::Superpositions RdpO QM-like superpositions in Perl DCONWAY
+
+Array::
+Array::Compare RdpO Class to compare two arrays DAVECROSS
+Array::Heap cdpf Manipulate array elements as a heap JMM
+Array::IntSpan RdpO Handling arrays using IntSpan techniques TEVERETT
+Array::PrintCols adpf Print elements in vertically sorted columns AKSTE
+Array::Substr idp Implement array using substr() LWALL
+Array::Vec idp Implement array using vec() LWALL
+Array::Virtual idp Implement array using a file LWALL
+Array::Reform RdpO Convert an array into N-sized array of array TBONE
+
+Hash::
+Hash::NoVivify Rdcf Provide non-autovivifying hash functions BPOWERS
+
+Heap bdpO Define Heap interface JMM
+Heap::
+Heap::Binary bdpO Implement Binary Heap JMM
+Heap::Binomial bdpO Implement Binomial Heap JMM
+Heap::Fibonacci bdpO Implement Fibonacci Heap JMM
+Heap::Elem bdpO Heap Element interface, ISA JMM
+Heap::Elem::
+Heap::Elem::Num bdpO Numeric heap element container JMM
+Heap::Elem::NumRev bdpO Numeric element reversed order JMM
+Heap::Elem::Str bdpO String heap element container JMM
+Heap::Elem::StrRev bdpO String element reversed order JMM
+Heap::Elem::Ref bdpO Obj ref heap element container JMM
+Heap::Elem::RefRev bdpO Obj ref element reversed order JMM
+
+Scalar::
+Scalar::Util bdcf Scalar utilities (dualvar reftype etc) GBARR
+
+List::
+List::Util bdcf List utilities (eg min, max, reduce) GBARR
+
+Bit::
+Bit::Vector RdcO Virtual (arbitrary machineword size) CPU STBEY
+
+Set::
+Set::Bag RdpO Bag (multiset) class JHI
+Set::IntRange RdcO Set of integers (arbitrary intervals, fast) STBEY
+Set::IntSpan adpO Set of integers newsrc style '1,5-9,11' etc SWMCD
+Set::NestedGroups RdpO Grouped data eg ACL's, city/state/country ABARCLAY
+Set::Object bdcO Set of Objects (smalltalkish: IdentitySet) JLLEROY
+Set::Scalar adpO Set of scalars (inc references) JHI
+Set::Window bdpO Manages an interval on the integer line SWMCD
+
+Graph::
+Graph::Element RdpO Base class for element of directed graph NEILB
+Graph::Node RdpO A node in a directed graph NEILB
+Graph::Edge RdpO An edge in a directed graph NEILB
+Graph::Kruskal Rdpf Kruskal Algorithm for Minimal Spanning Trees STBEY
+
+Decision::
+Decision::Markov bdpO Build/evaluate Markov models for decisions ALANSZ
+
+Date::
+Date::Calc Rdcf Gregorian calendar date calculations STBEY
+Date::Convert cdpO Conversion between Gregorian, Hebrew, more? MORTY
+Date::CTime adpf Updated ctime.pl with mods for timezones GBARR
+Date::Format Rdpf Date formatter ala strftime GBARR
+Date::Interval idpO Lightweight normalised interval data type KTORP
+Date::Language adpO Multi-language date support GBARR
+Date::Manip Rdpf Complete date/time manipulation package SBECK
+Date::Parse Rdpf ASCII Date parser using regexp's GBARR
+Date::Time idpO Lightweight normalised datetime data type TOBIX
+
+Time::
+Time::Avail Rdpf Calculate min. remaining in time interval PSANTORO
+Time::CTime Rdpf Format Times ala ctime(3) with many formats MUIR
+Time::DaysInMonth Rdpf Returns the number of days in a month MUIR
+Time::HiRes Rdcf High resolution time, sleep, and alarm DEWEG
+Time::JulianDay Rdpf Converts y/m/d into seconds MUIR
+Time::Local Supf Implements timelocal() and timegm() P5P
+Time::Object adpO Object Oriented time objects MSERGEANT
+Time::ParseDate Rdpf Parses many forms of dates and times MUIR
+Time::Period Rdpf Code to deal with time periods PRYAN
+Time::Timezone Rdpf Figures out timezone offsets MUIR
+Time::Zone Rdpf Timezone info and translation routines GBARR
+Time::gmtime Supf A by-name interface for gmtime TOMC
+Time::localtime Supf A by-name interface for localtime TOMC
+Time::Seconds RdcO API to convert seconds to other date values MSERGEANT
+
+Calendar::
+Calendar::CSA adcO interface with calenders such as Sun and CDE KJALB
+Calendar::Hebrew cdpO Hebrew calendar conversion/manipulation YSTH
+Calendar::RCM i Russell Calendar Manager HTCHAPMAN
+
+Tie::
+Tie::Hash Supr Base class for implementing tied hashes P5P
+Tie::Scalar Supr Base class for implementing tied scalars P5P
+Tie::Array Supr Base class for implementing tied arrays P5P
+Tie::CPHash bdpO Case preserving but case insensitive hash CJM
+Tie::Cache Mdpr In memory size limited LRU cache CHAMAS
+Tie::DB_FileLock Rdpr Locking access to Berkeley DB 1.x. JMV
+Tie::DB_Lock Rdpr Tie DB_File with automatic locking KWILLIAMS
+Tie::DBI RdpO Tie hash to a DBI handle LDS
+Tie::Dir adpr Tie hash for reading directories GBARR
+Tie::Discovery Rdpr Discover data by caching sub results SIMON
+Tie::File adpr Tie hash to files in a directory AMW
+Tie::FileLRUCache bdph File based persistent LRU cache SNOWHARE
+Tie::Handle RdpO Base class for implementing tied filehandles STBEY
+Tie::HashDefaults adpr Let a hash have default values JDPORTER
+Tie::IxHash RdpO Indexed hash (ordered array/hash composite) GSAR
+Tie::LLHash Rdpr Fast ordered hashes via linked lists KWILLIAMS
+Tie::ListKeyedHash Rdpr Use lists to key multi-level hashes SNOWHARE
+Tie::Mem adcO Bind perl variables to memory addresses PMQS
+Tie::MmapArray bdcr Ties a file to an array ANDREWF
+Tie::Multidim adpr "tie"-like multidimensional data structures JDPORTER
+Tie::OffsetArray adpr Tie one array to another, with index offset JDPORTER
+Tie::Persistent Rdpr Persistent data structures via tie RGIERSIG
+Tie::Quick i Simple way to create ties TIMB
+Tie::RDBM RdpO Tie hashes to relational databases LDS
+Tie::RndHash bdpO choose a random key of a hash in O(1) time DFAN
+Tie::SecureHash RdpO Enforced encapsulation of Perl objects DCONWAY
+Tie::SentientHash bdpr Tracks changes to nested data structures ANDREWF
+Tie::ShadowHash adpO Merge multiple data sources into a hash RRA
+Tie::ShiftSplice i Defines shift et al in terms of splice LWALL
+Tie::SortHash Rdpr Provides persistent sorting for hashes CTWETEN
+Tie::SubstrHash SdpO Very compact hash stored in a string LWALL
+Tie::TextDir Rdpr ties a hash to a directory of textfiles KWILLIAMS
+Tie::Watch bdpO Watch variables, run code when read/written LUSOL
+Tie::Cycle RdpO Cycle through a list of values via a scalar. BDFOY
+
+Tie::Scalar::
+Tie::Scalar::Timeout adpr Scalar variables that time out MARCEL
+
+Tie::Cache::
+Tie::Cache::LRU adpr A Least-Recently Used cache MSCHWERN
+
+Class::
+Class::Accessor bdpO Automated accessor generation MSCHWERN
+Class::DBI adpO Simple SQL-based object persistance MSCHWERN
+Class::Eroot RdpO Eternal Root - Object persistence DMR
+Class::Fields bdph Inspect the fields of a class MSCHWERN
+Class::MethodMaker bdpO Create generic methods FLUFFY
+Class::Multimethods Rdpf A multiple dispatch mechanism for Perl DCONWAY
+Class::Mutator bdpO Dynamic polymorphism implemented in Perl GMCCAR
+Class::NamedParms MdpO A named parameter accessor base class SNOWHARE
+Class::ParmList MdpO A named parameter list processor SNOWHARE
+Class::Singleton bdpO Implementation of a "Singleton" class ABW
+Class::Template Rdpr Struct/member template builder DMR
+Class::Translucent RdpO Translucent (ala perltootc) method creation GED
+Class::Tree MdpO C++ class hierarchies & disk directories RSAVAGE
+Class::TOM RmpO Transportable Object Model for perl JDUNCAN
+Class::Contract RdpO Design-by-Contract OO in Perl. DCONWAY
+Class::WhiteHole RdpO Treat unhandled method calls as errors MSCHWERN
+Class::BlackHole RdpO treat unhandled method calls as no-op SBURKE
+Class::Classless MdpO Framework for classless OOP SBURKE
+Class::ISA Mdpf Report the search path thru an ISA tree SBURKE
+
+Object::
+Object::Info Rupf General info about objects (is-a, ...) JACKS
+Object::Transaction bdpO Transactions on serialized HASH files MUIR
+
+POE:: Perl Object Environment
+POE::Kernel RdpO An event queue that dispatches events RCAPUTO
+POE::Session RdpO state machine running on POE::Kernel events RCAPUTO
+
+POE::Component::
+POE::Component::RSS bdp? Event based RSS interface MSTEVENS
+POE::Component::SubWrapper bdp? Event based Module interface MSTEVENS
+
+MOP bdp Meta Object Protocol (Tool collection) ORTALO
+Ref RdpO Print, compare, and copy perl structures MUIR
+SOOP RdpO Safe Object Oriented Programming GARROW
+
+Sort::
+Sort::ByCompatMatrix idpO Sort objects by attribute compatibility ICKHABOD
+Sort::Fields bdpf sort text lines by alpha or numeric fields JNH
+Sort::PolySort bdpO general rules-based sorting of lists DMACKS
+Sort::Versions Rdpf sorting of revision (and similar) numbers KJALB
+
+Data Type Marshaling (converting to/from strings) and Persistent Storage
+
+Clone idch Recursive copy of nested objects RDF
+FreezeThaw bdpf Convert arbitrary objects to/from strings ILYAZ
+Persistence::
+Persistence::Object adpO Store Object definitions with Data::Dumper VIPUL
+Storable Rdcr Persistent data structure mechanism RAM
+Marshal::
+Marshal::Dispatch cdpO Convert arbitrary objects to/from strings MUIR
+Marshal::Packed cdpO Run-length coded version of Marshal module MUIR
+Marshal::Eval cdpO Undo serialization with eval MUIR
+Tangram RmpO Object persistence in relational databases JLLEROY
+
+Persistent::
+Persistent::Base bdpO Persistent base classes (& DBM/File classes) DWINTERS
+Persistent::DBI bdpO Persistent abstract class for DBI databases DWINTERS
+Persistent::MySQL bdpO Persistent class for MySQL databases DWINTERS
+Persistent::Oracle bdpO Persistent class for Oracle databases DWINTERS
+Persistent::Sybase bdpO Persistent class for Sybase databases DWINTERS
+Persistent::mSQL bdpO Persistent class for mSQL databases DWINTERS
+Persistent::LDAP bdpO Persistent class for LDAP directories DWINTERS
+
+Data::
+Data::Check cdpO Checks values for various data formats KENHOLM
+Data::DRef adph Nested data access using delimited strings EVO
+Data::Dumper RdpO Convert data structure into perl code GSAR
+Data::Flow RdpO Acquire data based on recipes ILYAZ
+Data::Locations RdpO Insert data into other data w/o temp files STBEY
+Data::Reporter RdcO Ascii Report Generator RVAZ
+Data::Walker RdpO Navigate through Perl data structures JNOLAN
+Data::Random adpf Generate random sets of data ADEO
+Data::JavaScript RdpO Dumps structures into JavaScript code SCHOP
+
+Tree::
+Tree::Base cdpO Defines a basic binary search tree MSCHWERN
+Tree::Fat Rdcf Embeddable F-Tree algorithm suite JPRIT
+Tree::Smart cdpO Splay tree, fastest for commonly accessed ke MSCHWERN
+Tree::Ternary bdpO Perl implementation of ternary search trees MROGASKI
+Tree::Ternary_XS adcO XS implementation of ternary search trees LBROCARD
+Tree::Trie bdpO An implementation of the Trie data structure AVIF
+Tree::Nary RdpO Perl implementation of N-ary search trees FSORIANO
+Tree::DAG_Node MdpO base class for trees SBURKE
+
+DFA::
+DFA::Command MdpO Discrete Finite Automata command processor RSAVAGE
+DFA::Kleene R Kleene's Algorithm for DFA STBEY
+DFA::Simple cdpO An "augmented transition network" RANDYM
+
+Boulder MdpO Generalized tag/value data objects LDS
+Thesaurus RdpO Create associations between related things DROLSKY
+
+7) Database Interfaces (see also Data Types)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+DBI amcO Generic Database Interface (see DBD modules) DBIML
+
+DBIx -- Extensions to the DBI
+
+DBIx::
+DBIx::Abstract RmpO Wrapper for DBI that generates SQL TURNERA
+DBIx::AnyDBD bdpO Module to make cross db applications easier MSERGEANT
+DBIx::CGITables adpO Easy DB access from a CGI TOBIX
+DBIx::Copy adpO Copying databases TOBIX
+DBIx::FullTextSearch bdpO Index documents with MySQL as storage TJMATHER
+DBIx::glueHTML bdpO CGI interface to DBI databases JFURNESS
+DBIx::HTMLView cdpO Creating web userinterfaces to DBI dbs HAKANARDO
+DBIx::OracleSequence adpO OO access to Oracle sequences via DBD-Oracle BLABES
+DBIx::Password MdpO Abstration layer for database passwords KROW
+DBIx::Recordset bmpO DB-Abtractionlayer / Access via Arrays/Hashs GRICHTER
+DBIx::Table bdpO OO access to DBI database tables DLOWE
+DBIx::TableAdapter adpO An object-relational mapper for DBI tables GED
+DBIx::Tree adpO Expand self-referential table into a tree BJEPS
+DBIx::XML_RDB ???? Creates XML from DBI datasources MSERGEANT
+DBIx::DBSchema bmpO Database-independent schema objects IVAN
+
+DBD::
+DBD::ASAny adcO Adaptive Server Anywhere Driver for DBI SMIRNIOS
+DBD::Altera bdpO Altera SQL Server for DBI - pure Perl code DSOUFLIS
+DBD::CSV adcO SQL engine and DBI driver for CSV files JWIED
+DBD::DB2 adcO DB2 Driver for DBI MHM
+DBD::Empress adcO Empress RDBMS Driver SWILLIAM
+DBD::FreeTDS adcO DBI driver for MS SQLServer and Sybase SPANNRING
+DBD::SearchServer cdcO PCDOCS/Fulcrum SearchServer Driver for DB SHARI
+DBD::Illustra bmcO Illustra Driver for DBI PMH
+DBD::Informix amcO Informix Driver for DBI JOHNL
+DBD::Informix4 adcO DBI driver for Informix SE 4.10 GTHYNI
+DBD::Ingres bmcO Ingres Driver for DBI HTOUG
+DBD::Multiplex a Spreading database load acrross servers TIMB
+DBD::ODBC amcO ODBC Driver for DBI DBIML
+DBD::Oracle MmcO Oracle Driver for DBI TIMB
+DBD::QBase amcO QBase Driver for DBI BENLI
+DBD::RAM bmpO a DBI driver for files and data structures JZUCKER
+DBD::SQLrelay bdpO SQLrelay driver for DBI DMOW
+DBD::Solid amcO Solid Driver for DBI TWENRICH
+DBD::Sqlflex RdcO SQLFLEX driver for DBI INFOFLEX
+DBD::Sybase bmcO Sybase Driver for DBI MEWP
+DBD::Unify bdcO Unify driver for DBI HMBRAND
+DBD::XBase bmpO XBase driver for DBI JANPAZ
+DBD::mSQL RmcO Msql Driver for DBI JWIED
+DBD::mysql RmcO Mysql Driver for DBI JWIED
+DBD::pNET amcO DBD proxy driver JWIED
+DBD::InterBase amcO DBI driver for InterBase RDBMS server EDPRATOMO
+
+Oraperl Rmpf Oraperl emulation interface for DBD::Oracle DBIML
+Ingperl bmpf Ingperl emulation interface for DBD::Ingres HTOUG
+
+DDL::
+DDL::Oracle bdpO Reverse engineers object DDL; also defrags RVSUTHERL
+
+MSSQL::
+MSSQL::DBlib Md+O Access MS SQL Server through DB-Library. SOMMAR
+MSSQL::Sqllib MdpO High-level interface using MSSQL::DBlib. SOMMAR
+
+Sybase::
+Sybase::Async cdpO interact with a Sybase asynchronously WORENKD
+Sybase::BCP RdcO Sybase BCP interface MEWP
+Sybase::DBlib RdcO Sybase DBlibrary interface MEWP
+Sybase::Simple bdpO Simplified db access using Sybase::CTlib MEWP
+Sybase::Sybperl Rdpf sybperl 1.0xx compatibility module MEWP
+Sybase::CTlib RdcO Sybase CTlibrary interface MEWP
+
+Ace i Interface to ACEDB (Popular Genome DB) LDS
+BBDB Rdph Insiduous big brother database LAXEN
+DTREE cdcf Interface to Faircom DTREE multikey ISAM db JWAT
+Datascope Rdcf Interface to Datascope RDBMS DANMQ
+Fame adcO Interface to FAME database and language TRIAS
+LotusNotes i Interface to Lotus Notes C/C++ API MBRECH
+Msql RmcO Mini-SQL database interface JWIED
+Mysql RmcO mysql database interface JWIED
+NetCDF bmcr Interface to netCDF API for scientific data SEMM
+ObjStore Rm+O ObjectStore OODBMS Interface JPRIT
+Pg Rdcf PostgreSQL SQL database interface MERGL
+PgSQL adpO "Pure perl" interface to PostgreSQL GTHYNI
+Pogo ad+O Interface for GOODS object database SEYN
+Postgres RncO PostgreSQL interface with Perl5 coding style VKHERA
+Sprite RdpO Limited SQL interface to flat file databases SHGUN
+Stanza i Text format database used by OSF and IBM JHI
+VDBM cdph Client/server-layers on top of DBM files RAM
+WAIT adhO A rewrite of the freeWAIS-sf engine in Perl ULPFR
+Wais Rdcf Interface to the freeWAIS-sf libraries ULPFR
+XBase RdpO Read/write interface to XBase files JANPAZ
+Xbase bdpf Read Xbase files with simple IDX indexes PRATP
+
+Tied Hash File Interfaces:
+
+AnyDBM_File Sup Uses first available *_File module above P5P
+BerkeleyDB RdcO Interface to Berkeley DB 2 & 3 PMQS
+CDB_File adc Tie to CDB (Bernstein's constant DB) files TIMPX
+DBZ_File adc Tie to dbz files (mainly for news history) IANPX
+DWH_File adpO DBM storage of complex data and objects SUMUS
+DB_File Suc Tie to DB files PMQS
+GDBM_File Suc Tie to GDBM files P5P
+NDBM_File Suc Tie to NDBM files P5P
+ODBM_File Suc Tie to ODBM files P5P
+SDBM_File Suc Tie to SDBM files P5P
+
+MLDBM RdpO Transparently store multi-level data in DBM GSAR
+MLDBM::
+MLDBM::Sync cdpr MLDBM wrapper to serialize concurrent access CHAMAS
+
+DB_File::
+DB_File::Lock RdpO DB_File wrapper with flock-based locking DHARRIS
+
+DBM::
+DBM::DBass adpf DBM with hashes, locking and XML records SPIDERBOY
+
+AsciiDB::
+AsciiDB::Parse i Generic text database parsing MICB
+AsciiDB::TagFile adpO Tie class for a simple ASCII database JOSERODR
+
+Db::
+Db::Ctree Rdcr Faircom's CTREE+ database interface REDEN
+Db::Documentum Rdcf Documentum EDMS Perl client interface MSROTH
+Db::dmObject cdpO Object-based interface to Documentum EDMS JGARRISON
+Db::DFC adpO OO Interface to Documentum's DFC MSROTH
+
+DbFramework::
+DbFramework::Attribute adpO Relational attribute class PSHARPE
+DbFramework::DataModel adpO Relational data model/schema class PSHARPE
+DbFramework::DataType adpO Attribute data type class PSHARPE
+DbFramework::ForeignKey adpO Relational foreign key class PSHARPE
+DbFramework::Key adpO Relational key class PSHARPE
+DbFramework::Persistent adpO Persistent object class PSHARPE
+DbFramework::PrimaryKey adpO Relational primary key class PSHARPE
+DbFramework::Table adpO Relational table/entity class PSHARPE
+DbFramework::Util adhO Utility functions/methods PSHARPE
+
+BTRIEVE::
+BTRIEVE::SAVE bdpO Read-write access to BTRIEVE SAVE files DLANE
+
+MARC bmpO MAchine Readable Catalog (library bib. data) PERL4LIB
+MARC::
+MARC::XML ampO MAchine Readable Catalog / XML Extension PERL4LIB
+
+Metadata::
+Metadata::Base bdpO Base metadata functionality DJBECKETT
+Metadata::IAFA bdpO IAFA templates metadata DJBECKETT
+Metadata::SOIF bdpO Harvest SOIF metadata DJBECKETT
+
+OLE::
+OLE::PropertySet aupO Property Set interface MSCHWARTZ
+OLE::Storage aupO Structured Storage / OLE document interface MSCHWARTZ
+OLE::Storage_Lite adpO Simple Class for OLE document interface KWITKNR
+
+Spectrum::
+Spectrum::CLI RdpO API for Spectrum Enterprise Mgr. CLI PLONKA
+
+Spreadsheet::
+Spreadsheet::Excel i Interface to Excel spreadsheets RRAWLINGS
+Spreadsheet::Lotus i Interface to Lotus 1-2-3 spreadsheets RRAWLINGS
+Spreadsheet::WriteExcel bupO Write numbers & text in Excel binary format JMCNAMARA
+Spreadsheet::ParseExcel RdpO Get information from Excel file KWITKNR
+
+X500::
+X500::DN MdpO X500 Distinguished Name parser RSAVAGE
+
+8) User Interfaces (Character and Graphical)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Term::
+Term::ANSIColor Sdpf Color output using ANSI escape sequences RRA
+Term::Cap Supf Basic termcap: Tgetent, Tputs, Tgoto TSANDERS
+Term::Complete Supf Tab word completion using stty raw WTOMPSON
+Term::Control idpf Basic curses-type screen controls (gotxy) KJALB
+Term::Gnuplot adcf Draw vector graphics on terminals etc ILYAZ
+Term::Info adpf Terminfo interface (currently just Tput) KJALB
+Term::ProgressBar idpf Progress bar in just ASCII EDAVIS
+Term::Prompt adpf Prompt a user ALLENS
+Term::Query Rdpf Intelligent user prompt/response driver AKSTE
+Term::ReadKey Rdcf Read keystrokes and change terminal modes KJALB
+Term::ReadLine Sdcf Common interface for various implementations ILYAZ
+Term::Scraper cdpO Drive and scrape terminal applications INGY
+Term::Screen RdpO Basic screen + input class (uses Term::Cap) MRKAE
+Term::Size adcf Simple way to get terminal size TIMPX
+Term::TUI bdpf User interface based on Term::ReadLine SBECK
+
+Term::ReadLine::
+Term::ReadLine::Perl RdpO GNU Readline history and completion in Perl ILYAZ
+Term::ReadLine::Gnu RdcO GNU Readline XS library wrapper HAYASHI
+
+Major Character User Interface Modules:
+
+Cdk RdcO Collection of Curses widgets GLOVER
+Curses adcO Character screen handling and windowing WPS
+Dialog bdch interface library to libdialog UNCLE
+PV bdpO Text-mode User Interface Widgets AGUL
+PerlMenu Mdpf Curses-based menu and template system SKUNZ
+
+Curses::
+Curses::Forms adpO Form management for Curses::Widgets CORLISS
+Curses::Widgets Rdpf Assorted widgets for rapid interfaces CORLISS
+
+Emacs adpf Support for Perl embedded in GNU Emacs JTOBEY
+Emacs::
+Emacs::Lisp bdch Perl-to-Emacs-Lisp glue JTOBEY
+
+Tk X Windows User Interface Modules
+
+Tk bmcO Object oriented version of Tk v4 TKML
+
+Tk::
+Tk::TextANSIColor bdpO use ANSI color codes in Text widget TJENNESS
+Tk::Autoscroll cdpf Alternative way to scroll SREZIC
+Tk::Axis RmpO Canvas with Axes TKML
+Tk::CheckBox RdpO A radio button widget that uses a checkmark DKWILSON
+Tk::ChildNotification RdpO Alert widget when child is created DKWILSON
+Tk::Clock RdpO Canvas based Clock widget HMBRAND
+Tk::Cloth RdpO Object interface to Tk::Canvas and items ACH
+Tk::Columns RdpO Multi column lists w/ resizable borders DKWILSON
+Tk::ComboEntry RdpO Drop down list + entry widget DKWILSON
+Tk::ContextHelp cdpO A context-sensitive help system SREZIC
+Tk::Dial RmpO An alternative to the Scale widget TKML
+Tk::Date cdpO A date/time widget SREZIC
+Tk::Enscript cdpf Create postscript from text files using Tk SREZIC
+Tk::FcyEntry adpO Entry with bg color depending on -state ACH
+Tk::FileDialog RdpO A highly configurable file selection widget BPOWERS
+Tk::FileEntry adpO Primitive clone of Tix FileEntry widget ACH
+Tk::FireButton RdpO Keeps invoking callback when pressed ACH
+Tk::FlatCheckbox cdpO A checkbox suitable for flat reliefs SREZIC
+Tk::FontDialog cdpO A font dialog widget for perl/Tk SREZIC
+Tk::Getopt adpO Configuration interface to Getopt::Long SREZIC
+Tk::HistEntry cdpO An entry widget with history capability SREZIC
+Tk::HTML bdpO View HTML in a Tk Text widget NI-S
+Tk::IconCanvas RdpO Canvas with movable iconic interface DKWILSON
+Tk::JPEG RdcO JPEG loader for Tk::Photo NI-S
+Tk::LockDisplay RdpO Screen saver/lock widget with animation LUSOL
+Tk::Login cdpO A Login widget (name, passwd, et al) BPOWERS
+Tk::Menustrip RdpO Another MenuBar DKWILSON
+Tk::More adpO A more (or less) like text widget ACH
+Tk::Multi bdpO Manages several Text or Canvas widgets DDUMONT
+Tk::NumEntry RdpO Numerical entry widget with up/down buttons ACH
+Tk::ObjScanner bdpO A scanner to view an object's attribute DDUMONT
+Tk::Olwm RmpO Interface to OpenLook toplevels properties TKML
+Tk::Pane RdpO A Frame that can be scrolled TKML
+Tk::PNG RdcO PNG loader for Tk::Photo NI-S
+Tk::Pod ?mpO POD browser toplevel widget TKML
+Tk::ProgressBar RdpO Status/progress bar TKML
+Tk::ProgressMeter cdpO Simple thermometer-style widget w/callbacks BPOWERS
+Tk::RotCanvas RdpO Canvas with arbitrary rotation support AQUMSIEH
+Tk::SplitFrame RdpO A sliding separator for two child widgets DKWILSON
+Tk::TabFrame RdpO A tabbed frame geometry manager DKWILSON
+Tk::TabbedForm RdpO Ext. TabFrame, allowing managed subwidgets DKWILSON
+Tk::TableEdit RdpO Simplified interface to a flat file database DKWILSON
+Tk::TableMatrix bdcO Display data in Table/Spreadsheet format CERNEY
+Tk::TiedListbox RmpO Gang together Listboxes TKML
+Tk::TFrame RdpO A Frame with a title ACH
+Tk::TIFF adpO TIFF loader for Tk::Photo SREZIC
+Tk::Tree RdpO Create and manipulate Tree widgets CTDEAN
+Tk::TreeGraph RdpO Widget to draw a tree in a Canvas DDUMONT
+Tk::WaitBox RdpO A Wait dialog, of the "Please Wait" variety BPOWERS
+Tk::XMLViewer adpO Tk widget to display XML SREZIC
+
+Modules in the realm of Tk but with a separate namespace
+
+Log::Dispatch::
+Log::Dispatch::ToTk RdpO Interface class between Log::Dispatch and Tk DDUMONT
+Log::Dispatch::TkText RdpO Text widget to log Log::Dispatch messages DDUMONT
+
+Puppet::
+Puppet::Body adpO Base class for persistent data DDUMONT
+Puppet::Log bdpO Logging facility based on Tk DDUMONT
+Puppet::Any adpO Base class for an optionnal GUI DDUMONT
+
+Puppet::VcsTools::
+Puppet::VcsTools::History bdpO VCS (RCS HMS) history viewer based on Canvas DDUMONT
+Puppet::VcsTools::File adpO VCS (RCS HMS) file manager DDUMONT
+
+Orac RdpO DBA GUI tool for Oracle, Informix and Sybase ANDYDUNC
+PPresenter MdpO Create presentations with Tk in Perl or XML MARKOV
+
+Other Major X Windows User Interface Modules:
+
+Gtk bdcO binding of the Gtk library used by GIMP KJALB
+
+Gtk::
+Gtk::Dialog adph Simple interface to create dialogs in Gtk ALISTAIRC
+
+Fresco cd+O Interface to Fresco (post X11R6 version) BPETH
+Glade adph Glade/Gtk+/Gnome UI source code generator DMUSGR
+Gnome bdcO Bindings to the Gnome Desktop Toolkit KJALB
+Qt ad+O Interface to the Qt toolkit AWIN
+Sx Rdcf Simple Athena widget interface FMC
+
+X11::
+X11::Auth adpO Read and handle X11 '.Xauthority' files SMCCAM
+X11::Fvwm RdcO interface to the FVWM window manager API RJRAY
+X11::Keysyms adpf X11 key symbols (translation of keysymdef.h) SMCCAM
+X11::Lib bdcO X11 library interface KENFOX
+X11::Motif bdcO Motif widget set interface KENFOX
+X11::Protocol adpO Raw interface to X Window System servers SMCCAM
+X11::Toolkit bdcO X11 Toolkit library interface KENFOX
+X11::Wcl bdcO Interface to the Widget Creation Library JHPB
+X11::XEvent bdcO provides perl OO acess to XEvent structures MARTINB
+X11::XFontStruct bdcO provides perl OO access to XFontStruct MARTINB
+X11::XRT adcO XRT widget set (commercial) interface KENFOX
+X11::Xbae adcO Xbae matrix (spreadsheet like) interface KENFOX
+X11::Xforms bdcO provides the binding to the xforms library MARTINB
+X11::Xpm adcf X Pixmap library interface KENFOX
+
+Abstract Graphical User Interfaces modules
+
+GUI::
+GUI::Guido i bd+O Communicate with objects in a GUI TBRADFUTE
+
+9) Interfaces to or Emulations of Other Programming Languages
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Clips adpO Interface to the Expert System Clips MSULLIVAN
+Java RdoO A Perl front-end for JVM communication METZZO
+Rc cdcO Perl interface for the Rc shell JPRIT
+SICStus adcO Interface to SICStus Prolog Runtime CBAIL
+
+C::
+C::DynaLib bdcO Allows direct calls to dynamic libraries JTOBEY
+C::Scan RdpO Heuristic parse of C files ILYAZ
+
+Tcl RdcO Complete access to Tcl MICB
+::Tk RdcO Complete access to Tk *via Tcl* MICB
+
+Language::
+Language::Basic adpO Implementation of BASIC AKARGER
+Language::Prolog adpO An implementation of Prolog JACKS
+Language::PGForth i Peter Gallasch's Forth implementation PETERGAL
+
+Fortran::
+Fortran::NameList adpf Interface to FORTRAN NameList data SGEL
+
+ShellScript::
+ShellScript::Env adpO Simple sh and csh script generator SVENH
+
+Verilog::
+Verilog::Pli Rdch Access to simulator functions WSNYDER
+Verilog::Language Rdpf Language support, number parsing, etc WSNYDER
+Verilog::Parser RdpO Language parsing WSNYDER
+Verilog::SigParser RdpO Signal and module extraction WSNYDER
+
+FFI cdcf Low-level Foreign Function Interface PMOORE
+
+FFI::
+FFI::Library cdcO Access to functions in shared libraries PMOORE
+
+FFI::Win32::
+FFI::Win32::Typelib idcO FFI taking definitions from a type library PMOORE
+FFI::Win32::COM idcO Access to COM using VTBL interface PMOORE
+
+Python bmcf Interface Python API (for embedded python) GAAS
+Python::
+Python::Object bmcO Wrapper for python objects GAAS
+Python::Err bmcO Wrapper for python exceptions GAAS
+
+10) File Names, File Systems and File Locking (see also File Handles)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Cwd Supf Current working directory functions P5P
+
+File::
+File::Attrib idpO Get/set file attributes (stat) TYEMQ
+File::BSDGlob bdcf Secure, csh-compatible filename globbing GBACON
+File::Backup bdpf Easy file backup & rotation automation KWILLIAMS
+File::Basename Supf Return basename of a filename P5P
+File::Cache adpO Share data between processes via filesystem DCLINTON
+File::CheckTree Supf Check file/dir tree against a specification P5P
+File::Compare Supf Compare file contents quickly P5P
+File::Copy adpf Copying files or filehandles ASHER
+File::CounterFile RdpO Persistent counter class GAAS
+File::Df adpf Free disk space utilities (h2ph required) FTASSIN
+File::Find Supf Call func for every item in a directory tree P5P
+File::Flock Mdph flock() wrapper. Auto-create locks MUIR
+File::Glob adpf Filename globing (ksh style) TYEMQ
+File::LckPwdF adcf Lock and unlock the passwd file ALLENS
+File::Listing Rdpf Parse directory listings GAAS
+File::Lock adcf File locking using flock() and lockf() JHI
+File::MultiTail adpO Tail multiple files SGMIANO
+File::Path Supf File path and name utilities P5P
+File::Remote Rdph Read/write/edit remote files transparently NWIGER
+File::Rsync bdpO Copy efficiently over the net and locally LEAKIN
+File::Signature cdpf Heuristics for file recognition JHI
+File::Slurp Mdpf Read/write/append files quickly MUIR
+File::Sort Rdpf Sort a file or merge sort multiple files CNANDOR
+File::Spec bdpO Handling files and directories portably KJALB
+File::Sync bdcf POSIX/*nix fsync() and sync() CEVANS
+File::Tail bdpO A more efficient tail -f MGRABNAR
+File::Temp adpf Create temporary files safely TJENNESS
+File::chmod Mdpf Allows for symbolic chmod notation PINYAN
+File::lockf bdcf Interface to lockf system call PHENSON
+File::stat Supf A by-name interface for the stat function TOMC
+File::BasicFlock Rdpf Simple flock() wrapper MUIR
+File::Searcher bdpO Search filetree do search/replace regexes ASTUBBS
+
+File::Searcher::
+File::Searcher::Interactive bdpO Interactive search do search/replace regexes ASTUBBS
+
+Dir::
+Dir::Purge Rdpf Delete files in directory based on timestamp JV
+
+Filesys::
+Filesys::AFS cdcO AFS Distributed File System interface NOG
+Filesys::Df Rdpr Disk free based on Filesys::Statvfs IGUTHRIE
+Filesys::DiskFree adpO OS independant parser of the df command ABARCLAY
+Filesys::Ext2 Rdpf Interface to e2fs filesystem attributes JPIERCE
+Filesys::SamFS adcf Interface to SamFS API LUPE
+Filesys::Statvfs Rdcf Interface to the statvfs() system call IGUTHRIE
+Filesys::dfent adpf By-name interface TOMC
+Filesys::mntent adpf By-name interface TOMC
+Filesys::statfs adpf By-name interface TOMC
+
+LockFile:: Application-level locking facilities
+LockFile::Lock adpO Lock handles created by LockFile::* schemes RAM
+LockFile::Manager adpO Records locks created by LockFile::* RAM
+LockFile::Scheme adpO Abstract superclass for locking modules RAM
+LockFile::Simple adpr Simple file locking mechanism RAM
+
+Stat::
+Stat::lsMode Rdpf Translate mode 0644 to -rw-r--r-- MJD
+
+11) String Processing, Language Text Processing, Parsing and Searching
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+String::
+String::Approx Rdpf Approximate string matching and substitution JHI
+String::BitCount adpf Count number of "1" bits in strings WINKO
+String::CRC Rdcf Cyclic redundency check generation MUIR
+String::CRC32 R?c? ZMODEM-like CRC32 generation of strings as w SOENKE
+String::DiffLine bdcf line # & position of first diff ALLEN
+String::Edit adpf Assorted handy string editing functions TOMC
+String::Parity adpf Parity (odd/even/mark/space) handling WINKO
+String::RexxParse Rdph Perl implementation of REXX 'parse' command BLCKSMTH
+String::Scanf Rdpf Implementation of C sscanf function JHI
+String::ShellQuote Rdpf Quote string for safe passage through shells ROSCH
+String::Strip Rdcf xs Module to remove white-space from strings BPOWERS
+String::Random RdpO Perl module to generate random strings based STEVE
+String::Similarity RdcO Calculate the similarity of two strings MLEHMANN
+
+Language text related modules
+
+Text::
+Text::Abbrev Supf Builds hash of all possible abbreviations P5P
+Text::Bastardize cdpO corrupts text in various ways AYRNIEU
+Text::Bib RdpO Module moved to Text::Refer ERYQ
+Text::BibTeX adcO Parse BibTeX files GWARD
+Text::CSV adpO Manipulate comma-separated value strings ALANCITT
+Text::CSV_XS adpO Fast 8bit clean version of Text::CSV JWIED
+Text::DelimMatch RdpO Match (possibly nested) delimited strings NWALSH
+Text::FillIn RdpO Fill-in text templates KWILLIAMS
+Text::Format RdpO Advanced paragraph formatting GABOR
+Text::Graphics RdpO Graphics rendering toolkit with text output SFARRELL
+Text::Iconv RdcO Perl interface to the XPG4 iconv() function MPIOTR
+Text::Invert cdpO Create/query inv. index of text entities NNEUL
+Text::Macros adpO template macro expander (OO) JDPORTER
+Text::Metaphone bdcf A modern soundex. Phonetic encoding of words MSCHWERN
+Text::MetaText bdpO Text processing/markup meta-language ABW
+Text::Morse cdpf convert text to/from Morse code JONO
+Text::ParseWords Supf Parse strings containing shell-style quoting HALPOM
+Text::Refer RdpO Parse refer(1)-style bibliography files ERYQ
+Text::SimpleTemplate adpO Template for dynamic text generation TAIY
+Text::Soundex Sdhf Convert a string to a soundex value MARKM
+Text::Tabs Sdpf Expand and contract tabs ala expand(1) MUIR
+Text::TeX cdpO TeX typesetting language input parser ILYAZ
+Text::Templar RdpO An object-oriented templating system GED
+Text::Template MdpO Expand template text with embedded perl MJD
+Text::TreeFile bdpO Reads tree of strings into a data structure JNK
+Text::Vpp RdpO Versatile text pre-processor DDUMONT
+Text::Wrap Sdpf Wraps lines to make simple paragraphs MUIR
+Text::iPerl adpf Bring text-docs to life via embedded Perl PFEIFFER
+Text::DoubleMetaphone adcf Convert string to phonetic encoding MAURICE
+Text::FastTemplate bdpO Perl subs from line-oriented templates BOZZIO
+
+Text::Wrap::
+Text::Wrap::Hyphenate a Like Text::Wrap with ability to hyphenate MJD
+
+Other Text:: modules (these should be under String:: but pre-date it)
+
+Text::
+Text::Balanced Mdpf Extract balanced-delimiter substrings DCONWAY
+Text::Banner adpf Resembles UNIX banner command LORY
+Text::Merge i??? Methods for text templating and data merging SHARRIS
+Text::Parser adpO String parser using patterns and states PATM
+Text::Trie adpf Find common heads and tails from strings ILYAZ
+
+Stemming algorithms
+
+Text::
+Text::English adpf English language stemming IANPX
+Text::German adpf German language stemming ULPFR
+Text::Stem bdpf Porter algorithm for stemming English words IANPX
+
+Natural Languages
+
+Lingua::
+Lingua::DetectCharset a Heuristics to detect coded character sets JNEYSTADT
+Lingua::Ident RdpO Statistical language identification MPIOTR
+Lingua::Ispell adpf Interface to the Ispell spellchecker JDPORTER
+Lingua::Stem Rdph Word stemmer with localization SNOWHARE
+
+Specific Natural Languages
+
+Lingua::
+Lingua::EN i Namespace for English language modules
+Lingua::PT bupf Namespace for Portugese language modules EGROSS
+
+Lingua::EN::
+Lingua::EN::AddressParse bdpO Manipulate geographical addresses KIMRYAN
+Lingua::EN::Cardinal i Convert numbers to words HIGHTOWE
+Lingua::EN::Fathom RdpO Readability measurements of English text KIMRYAN
+Lingua::EN::Hyphenate Rdpf Syllable based hyphenation DCONWAY
+Lingua::EN::Infinitive MdpO Find infinitive of a conjugated word RSAVAGE
+Lingua::EN::Inflect Mdpf English singular->plural and "a"->"an" DCONWAY
+Lingua::EN::MatchNames bdpf Smart matching for human names BRIANL
+Lingua::EN::NameCase Rdpf Convert NAMES and names to Correct Case SUMMER
+Lingua::EN::NameParse RdpO Manipulate persons name KIMRYAN
+Lingua::EN::Nickname bdpf Genealogical nickname matching(Peggy=Midge) BRIANL
+Lingua::EN::Ordinal i Convert numbers to words HIGHTOWE
+Lingua::EN::Squeeze bdpf Shorten english text for Pagers/GSM phones JARIAALTO
+Lingua::EN::Syllable a Estimate syllable count in words GREGFAST
+
+Lingua::EN::Numbers::
+Lingua::EN::Numbers::Ordinate Rdpf go from cardinal (53) to ordinal (53rd) SBURKE
+
+Lingua::RU::
+Lingua::RU::Charset anpf Detect/Convert russian character sets. FARBER
+
+ERG Rdpf An extensible report generator framework PHOENIXL
+
+PostScript::
+PostScript::Barcode bdpf Various types of barcodes as PostScript COLEMAN
+PostScript::Basic bdpO Basic methods for postscript generation STWIGGER
+PostScript::Document bdpO Generate multi-page PostScript SHAWNPW
+PostScript::Elements bdpO Objects for shapes, lines, images SHAWNPW
+PostScript::Font RdpO analyzes PostScript font files JV
+PostScript::FontInfo RdpO analyzes Windows font info files JV
+PostScript::FontMetrics RdpO analyzes Adobe Font Metric files JV
+PostScript::Metrics bdpO Font metrics data used by PS::TextBlock SHAWNPW
+PostScript::Resources RdpO loads Unix PostScript Resources file JV
+PostScript::TextBlock bdpO Objects used by PS::Document SHAWNPW
+
+Font::
+Font::AFM RdpO Parse Adobe Font Metric files GAAS
+Font::TFM RdpO Read info from TeX font metric files JANPAZ
+Font::TTF bdpO TrueType font manipulation module MHOSKEN
+Font::Fret RdpO Fret - Font REporting Tool MHOSKEN
+
+Number::
+Number::Format RdpO Package for formatting numbers for display WRW
+
+Number::Phone::
+Number::Phone::US Rdpf Validates several US phone number formats KENNEDYH
+
+Email::
+Email::Find adpf Find RFC 822 email addresses in plain text MSCHWERN
+
+Parse::
+Parse::ePerl Rdcr Embedded Perl (ePerl) parser RSE
+Parse::Lex adpO Generator of lexical analysers PVERD
+Parse::RecDescent MdpO Recursive descent parser generator DCONWAY
+Parse::Tokens bdpO Base class for parsing tokens from text MCKAY
+Parse::Yapp RdpO Generates OO LALR parser modules FDESAR
+Parse::YALALR RdpO Yet Another LALR parser SFINK
+Parse::Vipar bdpO Visual LALR parser debugger SFINK
+
+Search::
+Search::Dict Supf Search a dictionary ordered text file P5P
+Search::InvertedIndex RdpO Inverted index database support SNOWHARE
+Search::Binary Rdpf Generic binary search RANT
+
+SGML::
+SGML::Element cdpO Build a SGML element structure tree LSTAF
+SGML::Parser RdpO SGML instance parser EHOOD
+SGML::SPGrove bd+O Load SGML, XML, and HTML files KMACLEOD
+SGML::Entity RdpO An entity defined in an SGML or XML document KMACLEOD
+
+SGMLS RdpO A Post-Processor for SGMLS and NSGMLS INGOMACH
+
+XML RmhO Large collection of XML related modules XMLML
+
+XML::
+XML::AutoWriter RdpO DOCTYPE based XML output RBS
+XML::CSV i?cO Transform comma separated values to XML ISTERIN
+XML::Catalog RdpO Resolve public identifiers and remap system EBOHLMAN
+XML::DOM bmpO Implements Level 1 of W3's DOM ENNO
+XML::Doctype RdpO A DTD object class RBS
+XML::Dumper ampO Converts XML from/to Perl code EISEN
+XML::Edifact ???? Scripts for translating EDIFACT into XML KRAEHE
+XML::Element RdpO XML elements with the same interface as HTML SBURKE
+XML::Encoding ???? Parses encoding map XML files COOPERCL
+XML::Generator bdpO Generates XML documents BHOLZMAN
+XML::Grove RmpO Flexible lightweight mid-level XML objects KMACLEOD
+XML::PPD RdpO PPD file format and XML parsing elements MURRAY
+XML::PYX RdpO XML to PYX generator MSERGEANT
+XML::Parser bmcO Flexible fast parser with plug-in styles COOPERCL
+XML::QL ???? Implements the XML Query Language MSERGEANT
+XML::Registry ampO Implements a generic XML registry EISEN
+XML::Sablotron RdcO Interface to the Sablotron XSLT processor PAVELH
+XML::TreeBuilder RdpO Build a tree of XML::Element objects SBURKE
+XML::Writer ???? Module for writing XML documents DMEGG
+XML::XPath RdpO A set of modules for parsing and evaluating MSERGEANT
+XML::XQL ampO Performs XQL queries on XML object trees ENNO
+XML::XSLT RdcO Process XSL Transformational sheets BRONG
+XML::miniXQL ???? Simplistic XQL-like search using streams MSERGEANT
+
+Frontier::
+Frontier::RPC ???? Performs Remote Procedure Calls using XML KMACLEOD
+
+RDF::
+RDF::Service ampO RDF API with DBI and other backends JONAS
+
+RTF::
+RTF::Base i Classes for Microsoft Rich Text Format NI-S
+RTF::Document a pO Generate Rich Text (RTF) Files RRWO
+RTF::Generator idpO Next Generation of RTF::Document RRWO
+RTF::Group adpO Base class for manipulating Rich Text Format RRWO
+RTF::Parser a Base class for parsing RTF files PVERD
+
+SQL::
+SQL::Schema bdpO Convert a data dictionary to SQL statements TODD
+SQL::Statement adcO Small SQL parser and engine JWIED
+SQL::Builder adpO OO interface for creating SQL statements ZENIN
+
+TeX::
+TeX::DVI RdpO Methods for writing DVI (DeVice Independent) JANPAZ
+TeX::Hyphen RdpO Hyphenate words using TeX's patterns JANPAZ
+
+FrameMaker cdpO Top level FrameMaker interface PEASE
+FrameMaker::
+FrameMaker::FDK idcO Interface to Adobe FDK PEASE
+FrameMaker::MIF cdpO Parse and Manipulate FrameMaker MIF files PEASE
+FrameMaker::Control cdpO Control a FrameMaker session PEASE
+
+Marpa cd+O Context Free Parser JKEGL
+
+Chatbot::
+Chatbot::Eliza RdpO Eliza algorithm encapsulated in an object JNOLAN
+
+Quiz::
+Quiz::Question cdpO Questions and Answers wrapper RFOLEY
+
+Template RdpO Extensive Toolkit for template processing ABW
+dTemplate bmpO Flexible templating system DLUX
+
+Barcode::
+Barcode::Code128 adpO Generate CODE 128 bar codes WRW
+
+12) Option, Argument, Parameter and Configuration File Processing
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Getopt::
+Getopt::ArgvFile Rdpf Take options from files JSTENZEL
+Getopt::Declare MdpO An easy-to-use WYSIWYG command-line parser DCONWAY
+Getopt::EvaP Mdpr Long/short options, multilevel help LUSOL
+Getopt::Gnu adcf GNU form of long option handling WSCOT
+Getopt::Help bdpf Yet another getopt, has help and defaults IANPX
+Getopt::Long Sdpr Advanced handling of command line options JV
+Getopt::Mixed Rdpf Supports both long and short options CJM
+Getopt::Regex ad Option handling using regular expressions JARW
+Getopt::Simple MdpO A simple-to-use interface to Getopt::Long RSAVAGE
+Getopt::Std Supf Implements basic getopt and getopts P5P
+Getopt::Tabular adpr Table-driven argument parsing with help text GWARD
+Getopt::Tiny adpr Table of references interface, auto usage() MUIR
+
+Getargs::
+Getargs::Long cdpf Parses long function args f(-arg => value) RAM
+
+Argv bdph Provide an OO interface to an ARGV DSB
+ConfigReader cdpO Read directives from configuration file AMW
+Resources bdpf Application defaults management in Perl FRANCOC
+
+App:: General application development tools
+App::Config bdpO Configuration file mgmt ABW
+App::Manager adch Installing/Managing/Uninstalling Software MLEHMANN
+
+Config::
+Config::FreeForm bdpf Provide in-memory configuration data BTROTT
+Config::IniFiles Read/Write INI-Style configuration files RBOW
+
+CfgTie adph Framework for tieing system admin tasks RANDYM
+
+13) Internationalization and Locale
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+I18N::
+I18N::Charset Rdpf Character set names and aliases MTHURN
+I18N::Collate Sdpr Locale based comparisons JHI
+I18N::LangTags Mdpf compare & extract language tags (RFC1766) SBURKE
+I18N::WideMulti i Wide and multibyte character string JHI
+
+Locale::
+Locale::Country Rdpf ISO 3166 two letter country codes NEILB
+Locale::Date adpf Month/weekday names in various languages JHI
+Locale::Langinfo cdcf The <langinfo.h> API JHI
+Locale::Language Rdpf ISO 639 two letter language codes NEILB
+Locale::Msgcat RdcO Access to XPG4 message catalog functions CHRWOLF
+Locale::PGetText bdpf What GNU gettext does, written in pure perl MSHOYHER
+Locale::SubCountry RdpO ISO 3166-2 two letter subcountry codes KIMRYAN
+Locale::gettext Rdcf Multilanguage messages PVANDRY
+Locale::Maketext RdpO Framework for software localization SBURKE
+Locale::PO RdpO Manipulate .po entries from gettext ALANSZ
+
+Unicode::
+Unicode::String RdcO String manipulation for Unicode strings GAAS
+Unicode::Map8 RdcO Convert between most 8bit encodings GAAS
+Unicode::Normal i??? Composition, canonical ordering, blocks MHOSKEN
+Unicode::MapUTF8 Rdpf Conversions to and from arbitrary charsets SNOWHARE
+
+No::
+No::Dato Rdpf Norwegian stuff GAAS
+No::KontoNr Rdpf Norwegian stuff GAAS
+No::PersonNr Rdpf Norwegian stuff GAAS
+No::Sort Rdpf Norwegian stuff GAAS
+No::Telenor Rdpf Norwegian stuff GAAS
+
+Cz::
+Cz::Cstocs RdpO Charset reencoding JANPAZ
+Cz::Sort RdpO Czech sorting JANPAZ
+Cz::Speak bdpf number, etc. convertor to the Czech language YENYA
+
+Geography::
+Geography::States Rdp? Map states and provinces to their codes ABIGAIL
+
+Sort::
+Sort::ArbBiLex Mdpf sort functions for arbitrary sort orders SBURKE
+
+14) Authentication, Security and Encryption (see also Networking)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+User::
+User::Utmp Rdcf Perl access to UNIX utmp(x)-style databases MPIOTR
+User::pwent adpf A by-name interface to password database TOMC
+User::grent adpf A by-name interface to groups database TOMC
+User::utent cdcO Interface to utmp/utmpx/wtmp/wtmpx database ROSCH
+
+PGP adpO Simple interface to PGP subprocess via pipes PGPML
+PGP::
+PGP::Sign bdpr Create/verify PGP/GnuPG signatures, securely RRA
+
+GnuPG bdpO Perl interface to the GNU privacy guard. FRAJULAC
+GnuPG::
+GnuPG::Interface RdpO OO interface to GNU Privacy Guard FTOBIN
+
+DES adcf DES encryption (libdes) EAYNG
+Des adcf DES encryption (libdes) MICB
+GSS adcO Generic Security Services API (RFC 2078) MSHLD
+OpenCA RmpO Tools for running a Certification Authority MADWOLF
+SMIMEUtil amhf Sign, encrypt, verify, decrypt S/MIME mail SAMPO
+
+Digest::
+Digest::MD5 Rdch MD5 message digest algorithm GAAS
+Digest::MD2 Rdch MD2 message digest algorithm GAAS
+Digest::SHA1 cdch NIST SHA message digest algorithm UWEH
+Digest::HMAC Rdph HMAC message integrity check GAAS
+
+Crypt::
+Crypt::Beowulf Rdpf An original, very fast encryption algorithm SIFUKURT
+Crypt::Blowfish RdhO XS-based implementation of Blowfish DPARIS
+Crypt::Blowfish_PP adpO Blowfish encryption algorithm in Pure Perl MATTBM
+Crypt::CBC adpO Cipherblock chaining for Crypt::DES/IDEA LDS
+Crypt::CBCeasy bdpf Easy things make really easy with Crypt::CBC MBLAZ
+Crypt::DES a DES encryption (libdes) GARY
+Crypt::ElGamal bdpO ElGamal digital signatures and keys VIPUL
+Crypt::IDEA a International Data Encryption Algorithm GARY
+Crypt::Keys adpO Management system for cryptographic keys VIPUL
+Crypt::OTP Rdpf Implements One Time Pad encryption SIFUKURT
+Crypt::Passwd Mdhf Perl wrapper around the UFC Crypt LUISMUNOZ
+Crypt::PasswdMD5 Mdhf Interoperable MD5-based crypt() function LUISMUNOZ
+Crypt::PRSG a 160 bit LFSR for pseudo random sequences GARY
+Crypt::RC4 Rdpf Implements the RC4 encryption algorithm SIFUKURT
+Crypt::Random bdpO Cryptographically Strong Random Numbers VIPUL
+Crypt::Rot13 cdpO simple encryption often seen on usenet AYRNIEU
+Crypt::RSA bdpO RSA encryption, decryption, key generation VIPUL
+Crypt::Solitaire Rdpf A very simple encryption system SIFUKURT
+Crypt::Twofish Rdpf Twofish Encryption Algorothm NISHANT
+Crypt::UnixCrypt Rdpf Perl-only implementation of crypt(3) MVORL
+Crypt::RandPasswd RdpO Random password generator based on FIPS-181 JDPORTER
+Crypt::Rijndael bdch AES/Rijndael Encryption Module DIDO
+Crypt::TripleDES RdpO Triple DES encyption. VIPUL
+Crypt::PGP5 bdpO An Object Oriented Interface to PGP5. AGUL
+Crypt::PGP6 cdpO An Object Oriented Interface to PGP6. AGUL
+Crypt::PGP cdpO Unified OO Interface to PGP and GnuPG AGUL
+Crypt::GPG bdpO An Object Oriented Interface to GnuPG AGUL
+Crypt::ECB Mdph ECB mode for Crypt::DES, Blowfish, etc. APPEL
+Crypt::CipherSaber bdpO OO module for CS-1 and CS-2 encryption CHROMATIC
+
+Authen::
+Authen::ACE adcO Interface to Security Dynamics ACE (SecurID) DCARRIGAN
+Authen::Krb4 RdcO Interface to Kerberos 4 API JHORWITZ
+Authen::Krb5 RdcO Interface to Kerberos 5 API JHORWITZ
+Authen::PAM bdch Interface to PAM library NIKIP
+Authen::TacacsPlus adcO Authentication on tacacs+ server MSHOYHER
+Authen::Ticket adpO Suite consisting of master/client/tools JSMITH
+
+RADIUS::
+RADIUS::Dictionary bdpO Object interface to RADIUS dictionaries CHRMASTO
+RADIUS::Packet bdpO Object interface to RADIUS (rfc2138) packets CHRMASTO
+RADIUS::UserFile bdpO Manipulate a RADIUS users file OEVANS
+
+SSLeay cdcO Interface to SSLeay EAYNG
+
+15) World Wide Web, HTML, HTTP, CGI, MIME etc (see Text Processing)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+URI::
+URI::Attr ampO Stores attributes in the URI name space LWWWP
+URI::Bookmark bdpO A Class for bookmarks ASPIERS
+URI::Bookmarks bdpO A Class for bookmark collections ASPIERS
+URI::Escape Rmpf General URI escaping/unescaping functions LWWWP
+URI::Find adpf Find URIs in plain text MSCHWERN
+URI::URL RmpO Uniform Resource Locator objects LWWWP
+
+CGI::
+CGI::Application RmpO Framework for building reusable web-apps JERLBAUM
+CGI::ArgChecker bdpO Consistent, extensible CGI param validation DLOWE
+CGI::Authent Mdpf request the HTTP authentification JENDA
+CGI::Base RmpO Complete HTTPD CGI Interface class CGIP
+CGI::BasePlus RmpO Extra CGI::Base methods (incl file-upload) CGIP
+CGI::CList bdpO Manages hierarchical collapsible lists PEARCEC
+CGI::Cache adpf Speed up slow CGI scripts by caching BROCSEIB
+CGI::Carp cmpf Drop-in Carp replacement for CGI scripts CGIP
+CGI::Debug Mdph show CGI debugging data JONAS
+CGI::Deurl Mdpr decode the CGI parameters JENDA
+CGI::Enurl Mdpr encode the CGI parameters JENDA
+CGI::Formalware MdpO Convert an XML file to a suite of CGI forms RSAVAGE
+CGI::Imagemap Rdph Imagemap handling for specialized apps MIKEH
+CGI::LogCarp Rdph Error, log, bug streams, httpd style format MIKEKING
+CGI::MiniSvr RmpO Fork CGI app as a per-session mini server CGIP
+CGI::Minimal MdpO A micro-sized CGI handler SNOWHARE
+CGI::MxScreen cdpO Screen multi-plexer framework RAM
+CGI::Out adpf Buffer CGI output and report errors MUIR
+CGI::PathInfo RdpO A lightweight PATH_INFO based CGI package SNOWHARE
+CGI::Persistent adpO Transparent State Persistence in CGI scripts VIPUL
+CGI::Query adpO Parse CGI quiry strings MPECK
+CGI::QuickForm Rdpf Handles UI & validation for CGI forms SUMMER
+CGI::Request RmpO Parse CGI request and handle form fields CGIP
+CGI::Response ampO Response construction for CGI applications MGH
+CGI::Screen adpO Create multi screen CGI-scripts ULPFR
+CGI::Session cdpO Persistent storage of complex data in CGI ZED
+CGI::SpeedyCGI bdcn Run CGI scripts persistenly HORROCKS
+CGI::Validate adpO Advanced CGI form parser ZENIN
+CGI::WML RdpO Subclass of CGI.pm for WML output AWOOD
+CGI::XML ampO Convert CGI.pm variables to/from XML EISEN
+CGI::XMLForm adpO Create/query XML for forms MSERGEANT
+
+HTML::
+HTML::Base adpO Object-oriented way to build pages of HTML GAND
+HTML::CalendarMonth RmpO Calendar Months as easy HTML::Element trees MSISK
+HTML::Demoroniser adpO Correct moronic and incompatible HTML JDPORTER
+HTML::EP adpO Modular, extensible Perl embedding JWIED
+HTML::Element RdpO Representation of a HTML parsing tree SBURKE
+HTML::ElementGlob RmpO Manipulate multiple HTML elements as one MSISK
+HTML::ElementRaw RmpO Graft HTML strings onto an HTML::Element MSISK
+HTML::ElementSuper RmpO Various HTML::Element extensions MSISK
+HTML::ElementTable RmpO Tables as easy HTML element structures MSISK
+HTML::Embperl Rmcf Embed Perl in HTML GRICHTER
+HTML::Entities Rmpf Encode/decode HTML entities LWWWP
+HTML::FillInForm adpO Fill in HTML forms, separating HTML and code TJMATHER
+HTML::Formatter ampO Convert HTML to plain text or Postscript LWWWP
+HTML::HeadParser RmpO Parse <HEAD> section of HTML documents LWWWP
+HTML::LinkExtor RmpO Extract links from HTML documents LWWWP
+HTML::Mason bdpO Build sites from modular Perl/HTML blocks JSWARTZ
+HTML::ParseForm i Parse and handle HTML forms via templates NMONNET
+HTML::Parser RmcO Basic HTML Parser LWWWP
+HTML::QuickCheck cdpf Fast simple validation of HMTL text YLU
+HTML::Simple bdpf Simple functions for generating HTML TOMC
+HTML::SimpleParse RdpO Bare-bones HTML parser KWILLIAMS
+HTML::StickyForms adpO HTML form generation for mod_perl/CGI PMH
+HTML::Stream RdpO HTML output stream ERYQ
+HTML::Subtext adpO Text substitutions on an HTML template KAELIN
+HTML::Table RupO Write HTML tables via spreadsheet metaphor AJPEACOCK
+HTML::TableExtract RmpO Flexible HTML table extraction MSISK
+HTML::TableLayout bdpO an extensible OO layout manager PERSICOM
+HTML::Template MmpO a simple HTML templating system SAMTREGAR
+HTML::TokeParser RmpO Alternative HTML::Parser interface LWWWP
+HTML::Validator bdpO HTML validator utilizing nsgmls and libwww SAIT
+HTML::Tagset Rdpf data tables useful in parsing HTML SBURKE
+
+HTML::Widgets::
+HTML::Widgets::DateEntry RdpO Creates date entry widgets for HTML forms. KENNEDYH
+HTML::Widgets::Menu RdpO Builds an HTML menu FRANKIE
+HTML::Widgets::Search RdpO Perl module for building searches returning FRANKIE
+
+HTTP::
+HTTP::Browscap cdpO Provides info on web browser capabilities JAMESPO
+HTTP::BrowserDetect adph Detect browser, version, OS from UserAgent LHS
+HTTP::Cookies RmpO Storage of cookies LWWWP
+HTTP::DAV ampO A client module for the WebDAV protocol PCOLLINS
+HTTP::Daemon RmpO Base class for simple HTTP servers LWWWP
+HTTP::Date Rmpf Date conversion for HTTP date formats LWWWP
+HTTP::Headers RmpO Class encapsulating HTTP Message headers LWWWP
+HTTP::Message RmpO Base class for Request/Response LWWWP
+HTTP::Negotiate Rmpf HTTP content negotiation LWWWP
+HTTP::Request RmpO Class encapsulating HTTP Requests LWWWP
+HTTP::Response RmpO Class encapsulating HTTP Responses LWWWP
+HTTP::Status Rmpf HTTP Status code processing LWWWP
+HTTP::GHTTP RdcO Perl interface to the gnome ghttp library MSERGEANT
+HTTP::WebTest bdph Run tests on remote URLs or local web files RANDERSON
+
+HTTP::Request::
+HTTP::Request::Common Rmpf Functions that generate HTTP::Requests LWWWP
+HTTP::Request::Form RdpO Generates HTTP::Request objects out of forms GBAUER
+
+WAP::
+WAP::Wbmp i??? Wireless bitmap manipulation module SAA
+WAP::WML i??? Wireless Markup language routines SAA
+
+WML::
+WML::Card RdpO Builds WML code for different wap browsers MALVARO
+WML::Deck RdpO WML Deck generator MALVARO
+
+HTTPD::
+HTTPD::Access cdpO Management of server access control files LDS
+HTTPD::Authen bdpO Preform HTTP Basic and Digest Authentication LDS
+HTTPD::Config cdpO Management of server configuration files LDS
+HTTPD::GroupAdmin bdpO Management of server group databases LDS
+HTTPD::UserAdmin bdpO Management of server user databases LDS
+
+WWW::
+WWW::BBSWatch adpO email WWW bulletin board postings TAYERS
+WWW::Robot adpO Web traversal engine for robots & agents NEILB
+WWW::RobotRules ampO Parse /robots.txt file LWWWP
+WWW::Search adpO Front-end to Web search engines JOHNH
+
+WWW::Search::
+WWW::Search::AlltheWeb RdpO Class for searching AlltheWeb JSMYSER
+WWW::Search::Deja RdpO Class for www.deja.com searching MTHURN
+WWW::Search::Go RdpO Backend class for searching with go.com ALIAN
+
+LWP RmpO Libwww-perl LWWWP
+LWP::
+LWP::Conn ampO LWPng stuff LWWWP
+LWP::MediaTypes Rmpf Media types and mailcap processing LWWWP
+LWP::Parallel RmpO Allows parallel http and ftp access with LWP MARCLANG
+LWP::Protocol RmpO LWP support for URL schemes (http, file etc) LWWWP
+LWP::RobotUA RmpO A UserAgent for robot applications LWWWP
+LWP::Simple Rmpf Simple procedural interface to libwww-perl LWWWP
+LWP::UA ampO LWPng stuff LWWWP
+LWP::UserAgent RmpO A WWW UserAgent class LWWWP
+
+MIME::
+MIME::Base64 Rdhf Encode/decode Base 64 (RFC 2045) GAAS
+MIME::QuotedPrint Rdpf Encode/decode Quoted-Printable GAAS
+MIME::Decoder RdpO OO interface for decoding MIME messages ERYQ
+MIME::Entity RdpO An extracted and decoded MIME entity ERYQ
+MIME::Head RdpO A parsed MIME header ERYQ
+MIME::IO ?dpO DEPRECATED: now part of IO:: ERYQ
+MIME::Latin1 ?dpO DEPRECATED and removed ERYQ
+MIME::Lite RdpO Single module for composing simple MIME msgs ERYQ
+MIME::Parser RdpO Parses streams to create MIME entities ERYQ
+MIME::Types adpr Returns the MIME type for a filename/suffix OKAMOTO
+MIME::Words Rdpf Encode/decode RFC1522-escaped header strings ERYQ
+
+MIME::Lite::
+MIME::Lite::HTML bmpO Provide routine to transform HTML to MIME ALIAN
+
+Apache RmcO Interface to the Apache server API DOUGM
+
+Apache PerlHandler modules
+
+Apache::
+Apache::ASP bdpO Implement Active Server Pages CHAMAS
+Apache::AdBanner cdpf Ad banner server CHOLET
+Apache::AddrMunge bdpf Munge email addresses in webpages MJD
+Apache::Archive bdpf Make linked contents pages of .tar(.gz) JPETERSON
+Apache::AutoIndex Rdcf Lists directory content GOZER
+Apache::AxKit RdcO XML Application Server for Apache MSERGEANT
+Apache::BBS cdpO BBS like System for Apache MKOSSATZ
+Apache::Cachet i OutputChain with caching MERLYN
+Apache::CallHandler cdpf Map filenames to subroutine calls GKNOPS
+Apache::Compress bdpO Compress content on the fly KWILLIAMS
+Apache::Dir i OO (subclassable) mod_dir replacement DOUGM
+Apache::Dispatch bmpf Call PerlHandlers as CGI scripts GEOFF
+Apache::Embperl Rmcf Embed Perl in HTML GRICHTER
+Apache::EmbperlChain bdpO Feed handler output to Embperl CHOLET
+Apache::FTP i Full-fledged FTP proxy PMKANE
+Apache::Filter RdpO OutputChain like functionality KWILLIAMS
+Apache::Forward bdpO OutputChain like functionality MPB
+Apache::Gateway bdpf A multiplexing gateway CCWF
+Apache::GzipChain bmpf Compress files on the fly ANDK
+Apache::Layer bdpf Layer content tree over one or more SAM
+Apache::Magick bdpf Image conversion on-the-fly MPB
+Apache::Mason bdpO Build sites w/ modular Perl/HTML blocks JSWARTZ
+Apache::ModuleDoc bdpf Self documentation for Apache C modules DOUGM
+Apache::NNTPGateway adpf A Web based NNTP (usenet) interface BOUBAKER
+Apache::NavBar bdpO Navigation bar generator MPB
+Apache::OWA bdpf Runs Oracle PL/SQL Web Toolkit apps SVINTO
+Apache::OutputChain bmpO Chain output of stacked handlers JANPAZ
+Apache::PageKit ampO Application framework w/ HTML::Template TJMATHER
+Apache::PassFile bdpf Send file via OutputChain ANDK
+Apache::PerlRun Smpf Run unaltered CGI scripts APML
+Apache::PrettyPerl Rdpf Syntax highlighting for Perl files RA
+Apache::PrettyText bdpf Re-format .txt files for client display CHTHORMAN
+Apache::RandomLocation bdpf Random image display RKOBES
+Apache::Registry Smpf Run unaltered CGI scripts APML
+Apache::Reload RdpO Reload changed modules (extending StatINC) MSERGEANT
+Apache::RobotRules cdpf Enforce robot rules (robots.txt) PARKER
+Apache::SSI RmpO Implement server-side includes in Perl KWILLIAMS
+Apache::SSIChain bmpO SSI on other modules output JANPAZ
+Apache::Sandwich bmpf Layered document (sandwich) maker VKHERA
+Apache::ShowRequest bdpf Show phases and module participation DOUGM
+Apache::SimpleReplace ampf Simple replacement template tool GEOFF
+Apache::Stage Rdpf Manage a document staging directory ANDK
+Apache::TarGzip c Manage .tar.gz file ZENIN
+Apache::TimedRedirect bdpf Redirect urls for a given time period PETERM
+Apache::UploadSvr bdpO A lightweight publishing system ANDK
+Apache::VhostSandwich cdpf Virtual host layered document maker MARKC
+Apache::WDB bdpf Database query/edit tool using DBI JROWE
+Apache::WebSQL cdpO Adaptation of Sybase's WebSQL GUNTHER
+Apache::ePerl Rdpr Fast emulated Embedded Perl (ePerl) RSE
+Apache::iNcom bdpf An e-commerce framework FRAJULAC
+
+Apache PerlInitHandler modules
+
+Apache::
+Apache::RequestNotes ampf Pass cookie & form data around pnotes GEOFF
+
+Apache PerlAuthenHandler modules
+
+Apache::
+Apache::AuthAny bdpf Authenticate with any username/password MPB
+Apache::AuthenCache bmpf Cache authentication credentials JBODNAR
+Apache::AuthCookie RdpO Authen + Authz via cookies KWILLIAMS
+Apache::AuthenDBI bmpO Authenticate via Perl's DBI MERGL
+Apache::AuthenGSS cdpf Generic Security Service (RFC 2078) DOUGM
+Apache::AuthenIMAP bdpf Authentication via an IMAP server MICB
+Apache::AuthenPasswdSrv bdpf External authentication server JEFFH
+Apache::AuthenPasswd bdpf Authenticate against /etc/passwd DEP
+Apache::AuthLDAP bdpf LDAP authentication module CDONLEY
+Apache::AuthPerLDAP bdpf LDAP authentication module (PerLDAP) HENRIK
+Apache::AuthenNIS bdpf NIS authentication DEP
+Apache::AuthNISPlus bdpF NIS Plus authentication/authorization VALERIE
+Apache::AuthenRaduis bdpf Authentication via a Radius server DANIEL
+Apache::AuthenSmb bdpf Authenticate against NT server PARKER
+Apache::AuthenURL bdpf Authenticate via another URL JGROENVEL
+Apache::DBILogin bdpf Authenticate to backend database JGROENVEL
+Apache::DCELogin bdpf Obtain a DCE login context DOUGM
+Apache::PHLogin bdpf Authenticate via a PH database JGROENVEL
+Apache::TicketAccess bdpO Ticket based access/authentication MPB
+
+Apache PerlAuthzHandler modules
+
+Apache::
+Apache::AuthzAge bmpf Authorize based on age APML
+Apache::AuthzDCE cdpf DFS/DCE ACL based access control DOUGM
+Apache::AuthzDBI bmpO Group authorization via Perl's DBI MERGL
+Apache::AuthzGender bdpf Authorize based on gender MPB
+Apache::AuthzNIS bdpf NIS authorization DEP
+Apache::AuthzPasswd bdpf Authorize against /etc/passwd DEP
+Apache::AuthzSSL bdpf Authorize based on client cert MPB
+Apache::RoleAuthz i Role-based authorization DOUGM
+
+Apache PerlAccessHandler modules
+
+Apache::
+Apache::AccessLimitNum bmpf Limit user access by number of requests APML
+Apache::BlockAgent bdpf Block access from certain agents MPB
+Apache::DayLimit bmpf Limit access based on day of week MPB
+Apache::IPThrottle cdpf Limit bandwith consumption by IP MERLYN
+Apache::RobotLimit cdpf Limit access of robots PARKER
+Apache::SpeedLimit bdpf Control client request rate MPB
+
+Apache PerlTypeHandler modules
+
+Apache::
+Apache::MIME bdcf Perl implementation of mod_mime MPB
+Apache::MimeDBI bdpf Type mapping from a DBI database MPB
+Apache::MimeXML bdpf mime encoding sniffer for XML files MSERGEANT
+
+Apache PerlTransHandler modules (May also include a PerlHandler)
+
+Apache::
+Apache::AdBlocker bdpf Block advertisement images MPB
+Apache::AddHostPath adpf Prepends parts of hostname to URI RJENKS
+Apache::AnonProxy bdpf Anonymizing proxy MPB
+Apache::Checksum bdpf Manage document checksum trees MPB
+Apache::DynaRPC i Dynamically translate URIs into RPCs DOUGM
+Apache::LowerCaseGETs bdpf Lowercase URI's when needed PLISTER
+Apache::MsqlProxy bmpf Translate URI's into mSQL queries APML
+Apache::ProxyPass bdpf Perl implementation of ProxyPass MJS
+Apache::ProxyPassThru bdpO Skeleton for vanilla proxy RMANGI
+Apache::ProxyCache i Caching proxy DOUGM
+Apache::StripSession bdpf Strip session info from URI MPB
+Apache::Throttle bdpf Speed-based content negotiation DONS
+Apache::TransLDAP bdpf Translate URIs to LDAP queries CDONLEY
+
+Apache PerlFixupHandler modules
+
+Apache::
+Apache::RefererBlock bdpf Block based on MIME type + Referer CHOLET
+Apache::Timeit bmpf Benchmark PerlHandlers APML
+Apache::Usertrack bdpf Perl version of mod_usertrack ABH
+
+Apache PerlLogHandler modules
+
+Apache::
+Apache::DBILogConfig bdpf Custom format logging via DBI JBODNAR
+Apache::DBILogger bdpf Logging via DBI ABH
+Apache::DumpHeaders bdpf Watch HTTP transaction via headers DOUGM
+Apache::LogMail bdpf Log certain requests via email MPB
+Apache::Traffic bdpf Logs bytes transferred, per-user basis MAURICE
+Apache::WatchDog c Look for problematic URIs DOUGM
+
+Apache PerlChildInitHandler modules
+
+Apache::
+Apache::Resource Smpf Limit resources used by httpd children APML
+
+Apache Server Configuration
+
+Apache::
+Apache::ConfigLDAP i Config via LDAP and <Perl> MARKK
+Apache::ConfigDBI i Config via DBI and <Perl> MARKIM
+Apache::ModuleConfig SmcO Interface to configuration API APML
+Apache::PerlSections SmpO Utilities for <Perl> sections APML
+Apache::httpd_conf bmpO Methods to configure and run an httpd APML
+Apache::src SmpO Finding and reading bits of source APML
+
+Apache Database modules
+
+Apache::
+Apache::DBI bmpO Persistent DBI connection mgmt. MERGL
+Apache::Mysql bdpO Persistent connection mgmt. for Mysql NJENSEN
+
+Apache::Sybase::
+Apache::Sybase::DBlib bmpO Persistent DBlib connection mgmt. BMILLETT
+Apache::Sybase::CTlib bapO Persistent CTlib connection mgmt. MDOWNING
+
+Interfaces and integration with Apache C structures and modules
+
+Apache::
+Apache::Backhand bdcr Bridge between mod_backhand + mod_perl DLOWE
+Apache::CmdParms SmcO Interface to Apache cmd_parms struct APML
+Apache::Command bmcO Interface to Apache command_rec struct APML
+Apache::Connection SmcO Inteface to Apache conn_rec struct APML
+Apache::Constants Smcf Constants defined in httpd.h APML
+Apache::ExtUtils SmpO Utils for Apache:C/Perl glue APML
+Apache::File SmcO Methods for working with files APML
+Apache::Handler bmcO Interface to Apache handler_rec struct APML
+Apache::Log SmcO ap_log_error interface APML
+Apache::LogFile bmcO Interface to Apache's piped logs, etc. APML
+Apache::Module bmcO Interface to Apache module struct APML
+Apache::Scoreboard RdcO Perl interface to Apache's scoreboard.h DOUGM
+Apache::Server SmcO Interface to Apache server_rec struct APML
+Apache::SubProcess cmcO Interface to Apache subprocess API APML
+Apache::Table SmcO Interface to Apache table struct + API APML
+Apache::URI SmcO URI component parsing and unparsing APML
+Apache::Util Smcf Interface to Apache's util*.c functions APML
+
+HTTP Method handler
+
+Apache::
+Apache::PATCH bdpf HTTP PATCH method handler MPB
+Apache::PUT cdpf HTTP PUT method handler SORTIZ
+Apache::Roaming bdpO PUT/GET/MOVE/DELETE (Netscape Roaming) JWIED
+
+Watchdog and Monitoring tools
+
+Apache::
+Apache::SizeLimit Smpf Graceful exit for large children APML
+Apache::GTopLimit Rdpn Child exit on small shared or large mem STAS
+Apache::Status Smpf Embedded interpreter runtime status APML
+Apache::VMonitor Rdpn Visual System and Processes Monitor STAS
+
+Apache::Watchdog::
+Apache::Watchdog::RunAway Rdpn RunAway processes watchdog/terminator STAS
+
+Development and Debug tools
+
+Apache::
+Apache::DB amcO Hook Perl interactive DB into mod_perl DOUGM
+Apache::Debug Rmpf mod_perl debugging utilities APML
+Apache::DebugInfo ampO Per-request data logging GEOFF
+Apache::DProf bmcf Hook Devel::DProf into mod_perl DOUGM
+Apache::FakeRequest ampO Implement Apache methods off-line APML
+Apache::Leak bmcf Memory leak tracking routines APML
+Apache::Peek amcf Devel::Peek for mod_perl APML
+Apache::SawAmpersand bmpf Make sure noone is using $&, $' or $` APML
+Apache::SmallProf bmpf Hook Devel::SmallProf into mod_perl DOUGM
+Apache::StatINC Smpf Reload require'd files when updated APML
+Apache::Symbol bmcO Things for symbol things APML
+Apache::Symdump bmpf Symbol table snapshots to disk APML
+Apache::test Smpf Handy routines for 'make test' scripts APML
+
+Miscellaneous Apache modules
+
+Apache::
+Apache::Byterun i Run Perl bytecode modules DOUGM
+Apache::Cookie amcO C version of CGI::Cookie APML
+Apache::Icon bdcO Access to AddIcon* configuration DOUGM
+Apache::Include Smpf mod_include + Apache::Registry handler APML
+Apache::Mmap bdcf Share data via Mmap module FLETCH
+Apache::ParseLog bdpO OO interface to Apache log files AKIRA
+Apache::RegistryLoader SmpO Apache::Registry startup script loader APML
+Apache::Request amcO CGI.pm functionality using API methods APML
+Apache::Safe ampO Adaptation of "safecgiperl" APML
+Apache::Session bmpO Maintain client <-> httpd session/state JBAKER
+Apache::Servlet ampO Interface to the Java Servlet engine IKLUFT
+Apache::SIG SmpO Signal handlers for mod_perl APML
+Apache::State i Powerful state engine RSE
+Apache::TempFile bdpf Manage temporary files TOMHUGHES
+Apache::Upload amcO File upload class APML
+
+Netscape::
+Netscape::Cache bdpO Access Netscape cache files SREZIC
+Netscape::History bdpO Class for accessing Netscape history DB NEILB
+Netscape::HistoryURL bdpO Like a URI::URL, but with visit time NEILB
+Netscape::Server adcO Perl interface to Netscape httpd API BSUGARS
+
+HyperWave::
+HyperWave::CSP cdpO Interface to HyperWave's HCI protocol GOSSAMER
+
+WebFS::
+WebFS::FileCopy Rdpf Get, put, copy, delete files located by URL BZAJAC
+
+WebCache::
+WebCache::Digest bdpf Internet Cache Protocol (RFCs 2186 and 2187) MHAMILTON
+
+ASP Rdpr Perl interface to ASP PerlScript TIMMY
+Authorizenet bdpf Get Credit Card Info from authorizenet DLINCOLN
+BizTalk RdpO Microsoft BizTalk Framework Toolkit SIMONJ
+CGI_Lite MnpO Light-weight interface for fast apps SHGUN
+CIPP RdpO Preprocessor for embedding Perl, SQL in HTML JRED
+Catalog bmpO Manage/display resources catalog (URLs etc.) LDACHARY
+PApp adch Multi-page-state-preserving web applications MLEHMANN
+WDDX RdpO Allows distributed data exchange via XML GUELICH
+WING RmhO Apache based IMAP/NNTP Gateway MICB
+WOMP cdpO CGI App Dev Suite: authen/state/html SPADKINS
+
+FCGI Rdcr Fast CGI SKIMO
+FCGI::
+FCGI::ProcManager bdpO A FastCGI process manager JURACH
+
+16) Server and Daemon Utilities
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Event bmch fast, generic event loop JPRIT
+Event::
+Event::Stats Rmcf Collects statistics for Event JPRIT
+Event::tcp bmpO TCP session layer library JPRIT
+
+EventServer RupO Triggers objects on i/o, timers & interrupts JACKS
+::Functions Rupf Utility functions for initializing servers JACKS
+::Gettimeofday Rupr gettimeofday syscall wrapper JACKS
+::Signal Rupr signalhandler for the eventserver JACKS
+
+Server::Server::
+Server::Server::EventDriven RupO See 'EventServer' (compatibility maintained) JACKS
+
+Server::Echo::
+Server::Echo::MailPipe cup A process which accepts piped mail JACKS
+Server::Echo::TcpDForking cup TCP daemon which forks clients JACKS
+Server::Echo::TcpDMplx cup TCP daemon which multiplexes clients JACKS
+Server::Echo::TcpISWFork cup TCP inetd wait process, forks clients JACKS
+Server::Echo::TcpISWMplx cup TCP inetd wait process, multiplexes clients JACKS
+Server::Echo::TcpISNowait cup TCP inetd nowait process JACKS
+Server::Echo::UdpD cup UDP daemon JACKS
+Server::Echo::UdpIS cup UDP inetd process JACKS
+
+Server::Inet::
+Server::Inet::Functions cdpf Utility functions for Inet socket handling JACKS
+Server::Inet::Object cupO Basic Inet object JACKS
+Server::Inet::TcpClientObj cupO A TCP client (connected) object JACKS
+Server::Inet::TcpMasterObj cupO A TCP master (listening) object JACKS
+Server::Inet::UdpObj cupO A UDP object JACKS
+
+Server::FileQueue::
+Server::FileQueue::Functions cupf Functions for handling files and mailboxes JACKS
+Server::FileQueue::Object cupO Basic object JACKS
+Server::FileQueue::DirQueue cupO Files queued in a directory JACKS
+Server::FileQueue::MboxQueue cupO Mail queued in a mail box JACKS
+
+Server::Mail::
+Server::Mail::Functions cupf Functions for handling files and mailboxes JACKS
+Server::Mail::Object cupO Basic mail object JACKS
+
+MailBot cdpO Archive server, listserv, auto-responder RHNELSON
+Mud cdcO A multi-user online interactive game server GED
+
+NetServer::
+NetServer::Compiler idph State machine compiler for TCP/IP servers CHSTROSS
+NetServer::Generic RdpO generic OOP class for internet servers CHSTROSS
+NetServer::Portal bmpO Sets up a mini-server accessible via telnet JPRIT
+
+Time::
+Time::Warp Rmcf Change the start and speed of Event time JPRIT
+
+Spool::
+Spool::Queue i Generic printer spooling facilities RAM
+
+17) Archiving, Compression and Conversion
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Compress::
+Compress::Bzip2 Rdcf Interface to the Bzip2 compression library AZEMGI
+Compress::LZO Rdcf Interface to the LZO compression library MFX
+Compress::LZV1 RdcO Leight-weight Lev-Zimpel-Vogt compression MLEHMANN
+Compress::Zlib RdcO Interface to the Info-Zip zlib library PMQS
+
+Convert::
+Convert::ASN1 adpO Standard en/decode of ASN.1 structures GBARR
+Convert::BER adpO Class for encoding/decoding BER messages GBARR
+Convert::BinHex anpO Convert to/from RFC1741 HQX7 (Mac BinHex) ERYQ
+Convert::EBCDIC adpf ASCII to/from EBCDIC CXL
+Convert::Recode Rdpf Mapping functions between character sets GAAS
+Convert::SciEng bdpO Convert numbers with scientific notation COLINK
+Convert::Translit MdpO String conversion among many character sets GENJISCH
+Convert::UU bdpf UUencode and UUdecode ANDK
+Convert::UUlib Rdcr Intelligent de- and encode (B64, UUE...) MLEHMANN
+
+AppleII::
+AppleII::Disk bdpO Read/write Apple II disk image files CJM
+AppleII::ProDOS bdpO Manipulate files on ProDOS disk images CJM
+AppleII::DOS33 i Manipulate files on DOS 3.3 disk images CJM
+AppleII::Pascal i Manipulate files on Apple Pascal disk images CJM
+
+Archive::
+Archive::Tar adpO Read, write and manipulate tar files CDYBED
+Archive::Zip RdpO Provides an interface to ZIP archive files NEDKONZ
+
+PPM Rdpf Perl Package Manager MURRAY
+
+RPM adcO RPM package management RJRAY
+RPM::
+RPM::Constants adcO Constants for RPM package management RJRAY
+RPM::Database adcO DB interface for RPM package management RJRAY
+RPM::Headers adcO Headers for RPM package management RJRAY
+
+18) Images, Pixmap and Bitmap Manipulation, Drawing and Graphing
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+ElectricArc RdpO Generic diagram manipulation toolset SELKOVJR
+GIFgraph RdpO Obsolete, see GD::Graph MVERB
+Gimp Mmch Rich interface to write plugins for The Gimp MLEHMANN
+GraphViz RdpO Interface to the GraphViz graphing tool LBROCARD
+OpenGL adcf Interface to OpenGL drawing/imaging library FIJI
+PGPLOT Rdof PGPLOT plotting library - scientific graphs KGB
+PixDraw adcO Drawing and manipulating true color images KSB
+RenderMan a Manipulate RenderMan objects GMLEWIS
+T3D cdpO Realtime extensible 3D rendering GJB
+ThreeD i Namespace root for all kinds of 3D modules ADESC
+
+GD adcO Interface to Gd Graphics Library LDS
+GD::
+GD::Barcode bdpO Create barcode image with GD KWITKNR
+GD::Graph RdpO Create charts using GD MVERB
+GD::Text RdpO Classes for string handling with GD MVERB
+
+VRML RdpO VRML methods independent of specification HPALM
+VRML::
+VRML::VRML1 RdpO VRML methods with the VRML 1.0 standard HPALM
+VRML::VRML2 RdpO VRML methods with the VRML 2.0 standard HPALM
+VRML::Color Rdpf color functions and X11 color names HPALM
+VRML::Base RdpO common basic methods HPALM
+VRML::Browser i A complete VRML viewer LUKKA
+
+Graphics::
+Graphics::Libplot RdcO Binding for C libplotter plotting library JLAPEYRE
+Graphics::Plotter Rd+O Binding for C++ libplotter plotting library MAKLER
+Graphics::Simple idcO Simple drawing primitives NEERI
+Graphics::Turtle idp Turtle graphics package NEERI
+
+Image::
+Image::Colorimetry cdpO transform colors between colorspaces JONO
+Image::DS9 adpO Interface to SAO DS9 image & analysis prog DJERIUS
+Image::Grab RdpO Grabbing images off the Internet MAHEX
+Image::Magick RdcO Read, query, transform, and write images JCRISTY
+Image::ParseGIF RdpO Parse GIF images into component parts BENL
+Image::Size Rdpf Measure size of images in common formats RJRAY
+Image::Info RdpO Extract meta information from image files GAAS
+
+Chart::
+Chart::Base RdpO Business chart widget collection NINJAZ
+Chart::Gdchart bdch based on Bruce V's C gdchart distribution MHEMPEL
+Chart::Graph Rmpr front-end to gnuplot and XRT MHYOUNG
+Chart::PNGgraph RdpO Package to generate PNG graphs, uses GD.pm SBONDS
+Chart::Pie adpO Implements "new Chart::Pie()" KARLON
+Chart::Plot bdcO Graph two-dimensional data (uses GD.pm) SMORTON
+Chart::XMGR Rdph interface to XMGR plotting package TJENNESS
+
+Xmms bdcO Interactive remote control shell for xmms DOUGM
+Xmms::
+Xmms::Config bdcO Perl interface to the xmms_cfg_* API DOUGM
+Xmms::Remote bdcO Perl interface to the xmms_remote_* API DOUGM
+Xmms::Plugin i Perl interface to the xmms plugin APIs DOUGM
+
+Flash::
+Flash::SWF cmpO Read/Write Macromedia Flash SWF files SABREN
+
+19) Mail and Usenet News
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Mail::
+Mail::Address adpf Manipulation of electronic mail addresses GBARR
+Mail::Alias bdpO Manipulate E-mail aliases and alias files ZELT
+Mail::Audit RdpO Toolkit for constructing mail filters SIMON
+Mail::Cap adpO Parse mailcap files as specified in RFC 1524 GBARR
+Mail::CheckUser bdpf Checking email addresses for validness ILYAM
+Mail::Ezmlm bdpO Object methods for ezmlm mailing lists GHALSE
+Mail::Field RdpO Base class for handling mail header fields GBARR
+Mail::Folder adpO Base-class for mail folder handling KJOHNSON
+Mail::Freshmeat RdpO Parses newsletters from http://freshmeat.net ASPIERS
+Mail::Header RdpO Manipulate mail RFC822 compliant headers GBARR
+Mail::Internet adpO Functions for RFC822 address manipulations GBARR
+Mail::MH adcr MH mail interface MRG
+Mail::Mailer adpO Simple mail agent interface (see Mail::Send) GBARR
+Mail::POP3Client RdpO Support for clients of POP3 servers SDOWD
+Mail::Procmail Rdpf Procmail-like facility for creating easy mai JV
+Mail::Send adpO Simple interface for sending mail GBARR
+Mail::Sender MdpO socket() based mail with attachments, SMTP JENDA
+Mail::Sendmail Rdpf Simple platform independent mailer MIVKOVIC
+Mail::UCEResponder i Spamfilter CHSTROSS
+Mail::Util adpf Mail utilities (for by some Mail::* modules) GBARR
+Mail::IMAPClient RdpO An IMAP Client API DJKERNEN
+
+Mail::Field::
+Mail::Field::Received RdpO Parses Received headers as per RFC822 ASPIERS
+
+News::
+News::Article adpO Module for handling Usenet articles AGIERTH
+News::Gateway ampO Mail/news gatewaying, moderation support RRA
+News::NNTPClient bdpO Support for clients of NNTP servers RVA
+News::Newsrc adpO Manage .newsrc files SWMCD
+News::Scan cdpO Gathers and reports newsgroup statistics GBACON
+
+NNTP::
+NNTP::Server i Support for an NNTP server JOEHIL
+
+NNML::
+NNML::Server adpO An simple RFC 977 NNTP server ULPFR
+
+IMAP::
+IMAP::Admin RdpO IMAP Administration EESTABROO
+
+Sendmail::
+Sendmail::Milter Rdch Write mail filters for sendmail in Perl CYING
+
+20) Control Flow Utilities (callbacks and exceptions etc)
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+AtExit Rdpr atexit() function to register exit-callbacks BRADAPP
+Callback RdpO Define easy to use function callback objects MUIR
+Religion adpr Control where you go when you die()/warn() KJALB
+
+Hook::
+Hook::PrePostCall adpO Add actions before and after a routine PVERD
+
+Memoize bdpr Automatically cache results of functions MJD
+Memoize::
+Memoize::ExpireLRU Rdpr Provide LRU Expiration for Memoize BPOWERS
+
+21) File Handle, Directory Handle and Input/Output Stream Utilities
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+IO::
+IO::AtomicFile RdpO Write a file which is updated atomically ERYQ
+IO::Dir cdpO Directory handle objects and methods GBARR
+IO::File cdpO Methods for disk file based i/o handles GBARR
+IO::Handle cdpO Base class for input/output handles GBARR
+IO::Lines RdpO I/O handle to read/write to array of lines ERYQ
+IO::Pipe cdpO Methods for pipe handles GBARR
+IO::Ptty amcf Pseudo terminal interface functions RGIERSIG
+IO::Pty cdpO Methods for pseudo-terminal allocation etc PEASE
+IO::React RdpO OO Expect-like communication GARROW
+IO::STREAMS cdcO Methods for System V style STREAMS control NI-S
+IO::Scalar RdpO I/O handle to read/write to a string ERYQ
+IO::ScalarArray RdpO I/O handle to read/write to array of scalars ERYQ
+IO::Seekable cdpO Methods for seekable input/output handles GBARR
+IO::Select adpO Object interface to system select call GBARR
+IO::Socket cdpO Methods for socket input/output handles GBARR
+IO::Stty bmpf POSIX compliant stty interface RGIERSIG
+IO::Tee RdpO Multiplex output to multiple handles KENSHAN
+IO::Wrap RdpO Wrap old-style FHs in standard OO interface ERYQ
+IO::WrapTie RdpO Tie your handles & retain full OO interface ERYQ
+IO::Zlib adpO IO:: style interface to Compress::Zlib TOMHUGHES
+
+FileHandle SupO File handle objects and methods P5P
+FileCache Supf Keep more files open than the system permits P5P
+DirHandle SupO Directory handle objects and methods CHIPS
+SelectSaver SupO Save and restore selected file handle CHIPS
+Selectable cdpO Event-driven I/O streams MUIR
+
+Log::
+Log::Agent adpO A general logging framework RAM
+Log::Dispatch RdpO Log messages to multiple outputs DROLSKY
+Log::Topics Rdpf Control flow of topic based logging messages JARW
+Log::TraceMessages Rdpf Print developer's trace messages EDAVIS
+
+Log::Agent::
+Log::Agent::Logger cdpO Application-level logging interface RAM
+Log::Agent::Rotate adpO Logfile rotation config and support RAM
+
+Expect RdpO Close relative of Don Libes' Expect in perl RGIERSIG
+
+22) Microsoft Windows Modules
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Win32::
+Win32::ADO adpf ADO Constants and helper functions MSERGEANT
+Win32::ASP Rdpr Makes PerlScript ASP development easier WNODOM
+Win32::AbsPath Rdpf relative paths to absolute, understands UNCs JENDA
+Win32::AdminMisc Rdcf Misc admin and net functions DAVEROTH
+Win32::COM cd+O Access to native COM interfaces JDB
+Win32::ChangeNotify bdcO Monitor changes to files and directories CJM
+Win32::Clipboard Rdch Interaction with the Windows clipboard ACALPINI
+Win32::Console Rdch Win32 Console and Character mode functions ACALPINI
+Win32::Event bdcO Use Win32 event objects for IPC CJM
+Win32::EventLog adcf Interface to Win32 EventLog functions WIN32
+Win32::FUtils bdcf Implements missing File Utility functions JOCASA
+Win32::FileOp Mdpf file operations + fancy dialogs, INI files JENDA
+Win32::FileType RdpO modify Win32 fily type mapping JENDA
+Win32::GD RdcO Win32 port of the GD extension (gif module) DAVEROTH
+Win32::GUI bmch Perl-Win32 Graphical User Interface ACALPINI
+Win32::GuiTest adcf SendKeys, FindWindowLike and more ERNGUI
+Win32::IPC bdcO Base class for Win32 synchronization objects CJM
+Win32::Internet RdcO Perl Module for Internet Extensions ACALPINI
+Win32::Message bdcf Network based message passing DAVEROTH
+Win32::Mutex bdcO Use Win32 mutex objects for IPC CJM
+Win32::NetAdmin adcf Interface to Win32 NetAdmin functions WIN32
+Win32::NetResource adcf Interface to Win32 NetResource functions WIN32
+Win32::ODBC Rd+O ODBC interface for accessing databases DAVEROTH
+Win32::OLE Rm+h Interface to OLE Automation JDB
+Win32::Pipe Rd+O Named Pipes and assorted function DAVEROTH
+Win32::Process adcf Interface to Win32 Process functions WIN32
+Win32::RASE Rdpf Dialup entries and connections on Win32 MBLAZ
+Win32::Registry adcf Interface to Win32 Registry functions WIN32
+Win32::Semaphore bdcO Use Win32 semaphore objects for IPC CJM
+Win32::SerialPort RdpO Win32 Serial functions/constants/interface BBIRTH
+Win32::Shortcut Rd+O Manipulate Windows Shortcut files ACALPINI
+Win32::Sound Rdch An extension to play with Windows sounds ACALPINI
+Win32::WinError adcf Interface to Win32 WinError functions WIN32
+Win32::SystemInfo RdpO Memory and Processor information CJOHNSTON
+Win32::API RdcO Perl Win32 API Import Facility ACALPINI
+
+WinNT cdcf Interface to Windows NT specific functions WIN32
+NT cdcf Old name for WinNT - being phased out WIN32
+Win95 i Interface to Windows 95 specific functions WIN32
+
+Win32API::
+Win32API::CommPort RdpO Win32 Serial functions/constants/interface BBIRTH
+Win32API::Console cdcf Win32 Console Window functions/consts TYEMQ
+Win32API::File cdcf Win32 file/dir functions/constants TYEMQ
+Win32API::Registry adcf Win32 Registry functions/constants TYEMQ
+Win32API::WinStruct cdcf Routines for Win32 Windowing data structures TYEMQ
+Win32API::Window cdcf Win32 Windowing functions/constants TYEMQ
+
+23) Miscellaneous Modules
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+ARS Mmhh Interface to Remedy's Action Request API JMURPHY
+Agent cdpO Transportable Agent module SPURKIS
+Archie Rdpf Archie queries via Prospero ARDP protocol GBOSS
+BnP RdhO Build'n'Play all-purpose batch install. tool STBEY
+Bundle i Namespace reserved for modules collections ANDK
+CPAN RdpO Perl Archive browse and download ANDK
+Gedcom bmpO Interface to genealogy Gedcom files PJCJ
+Logfile RdpO Generic methods to analyze logfiles ULPFR
+NetObj adpO Module loading in real time over TCP/IP JDUNCAN
+Neural ad+O Generic simulation of neural networks LUKKA
+Nexus cdcO Interface to Nexus (threads/ipc/processes) RDO
+Pcap i An interface for LBL's packet capture lib AMOSS
+Roman Rdpf Convert Roman numbers to and from Arabic OZAWA
+SDDF cd+O Interface to Pablo Self Defining Data Format FIS
+
+AI::
+AI::Fuzzy RdpO Perl extension for Fuzzy Logic SABREN
+AI::jNeural RdcO Jet's Neural Architecture JETTERO
+AI::NeuralNet RdpO A simple back-prop neural net JBRYAN
+
+Astro::
+Astro::Coord Rdpf Transform telescope and source coordinates CPHIL
+Astro::Misc Rdpf Miscellaneous astronomical routines CPHIL
+Astro::MoonPhase Rdpf Information about the phase of the Moon. RPIKKARA
+Astro::SLA Rdcf Interface to SLALIB positional astronomy lib TJENNESS
+Astro::SunTime cdpf Calculate sun rise/set times ROBF
+Astro::Time Rdpf General time conversions for Astronomers CPHIL
+Astro::Sunrise RdpO Computes sunrise/sunset for a given day RKHILL
+
+Audio::
+Audio::CD bdcO Perl interface to libcdaudio (cd + cddb) DOUGM
+Audio::Sox i sox sound library as one or more modules NI-S
+
+Audio::Play::
+Audio::Play::MPG123 RdcO Generic frontend for MPG123 MLEHMANN
+
+MPEG::
+MPEG::ID3v1Tag MdpO ID3v1 MP3 Tag Reader/Writer SVANZOEST
+MPEG::ID3v2Tag bdpO OO, extensible ID3 v2.3 tagging module MDIMEO
+MPEG::MP3Play RdhO Create your own MPEG audio player JRED
+
+MP3::
+MP3::Info bdpf Manipulate / fetch info from MP3 audio files CNANDOR
+MP3::Tag bdpO Tag - Module for reading tags of mp3 files THOGEE
+
+BarCode::
+BarCode::UPC i Produce PostScript UPC barcodes JONO
+
+Bio i Utilities for molecular biology SEB
+
+Business::
+Business::Cashcow i??? Internet payment with the Danish PBS GKE
+Business::CreditCard Rdpf Credit card number check digit test JONO
+Business::ISBN RdpO Work with ISBN as objects BDFOY
+Business::ISSN adpO Object and functions to work with ISSN SAPAPO
+Business::OnlinePayment RdpO Ecommerce middleware JASONK
+Business::UPC ???? manipulating Universal Product Codes ROBF
+Business::US_Amort Mdph US-style loan amortization calculations SBURKE
+
+Chemistry::
+Chemistry::Elements RdpO Working with Chemical Elements BDFOY
+Chemistry::Isotopes idpO extends Elements to deal with isotopes BDFOY
+
+Cisco::
+Cisco::Conf adpO Cisco router administratian via TFTP JWIED
+
+FAQ::
+FAQ::OMatic RdpO A CGI-based FAQ/help database maintainer JHOWELL
+
+FestVox i??? Build synthetic voices (cf. www.festvox.org) LENZO
+
+Finance::
+Finance::Quote RmpO Fetch stock prices over the Internet PJF
+Finance::QuoteHist bdpO Historical stock quotes from multiple sites MSISK
+
+Games::
+Games::Cards adpO Tools to write card games in Perl AKARGER
+Games::Dice cdpf Simulates rolling dice PNE
+Games::Hex cdpO Object library for hexmap-based board games JHKIM
+Games::WordFind bdpO Generate word-find type puzzles AJOHNSON
+Games::Alak Rdpf a simple gomoku-like game SBURKE
+Games::Dissociate Mdpf a Dissociated Press algorithm and filter SBURKE
+Games::Worms RdpO A life simulator for Conway/Patterson worms SBURKE
+
+Geo::
+Geo::METAR Rdpf Process Aviation Weather (METAR) Data JZAWODNY
+Geo::Storm_Tracker i Retrieves tropical storm advisories CARPENTER
+Geo::WeatherNOAA Rdpf Current/forecast weather from NOAA MSOLOMON
+
+HP200LX::
+HP200LX::DB cdpO Handle HP 200LX palmtop computer database GGONTER
+HP200LX::DBgui cdpO Tk base GUI for HP 200LX db files GGONTER
+
+LEGO::
+LEGO::RCX bdpO Control you Lego Mindstorm RCX computer JQUILLAN
+
+MIDI Mdph read/edit/compose MIDI files SBURKE
+MIDI::
+MIDI::Realtime cdpO Interacts with MIDI devices in realtime FOOCHRE
+
+Penguin RdpO Remote Perl in Secure Environment AMERZKY
+Penguin::
+Penguin::Easy RdpO Provides quick, easy access to Penguin API JDUNCAN
+
+Psion::
+Psion::Db idpO Handle Psion palmtop computer database files IANPX
+
+Remedy::
+Remedy::AR adcO Interface to Remedy's Action Request API RIK
+
+Router::
+Router::LG bdpO Execute commands on routers (based on lg.pl) CHRISJ
+
+Schedule:: See also Schedule:: in chapter 4
+Schedule::Match adpf Pattern-based crontab-like schedule TAIY
+
+Silly::
+Silly::StringMaths adpf Do maths with letters and strings SKINGTON
+
+SyslogScan::
+SyslogScan::SyslogEntry bdpO Parse UNIX syslog RHNELSON
+SyslogScan::SendmailLine bdpO Summarize sendmail transactions RHNELSON
+
+Video::Capture::
+Video::Capture::V4l Mdch Video4linux framegrabber interface MLEHMANN
+
+Watchdog::
+Watchdog::Service adpO Look for service in process table PSHARPE
+Watchdog::HTTPService adpO Test status of HTTP server PSHARPE
+Watchdog::MysqlService adpO Test status of Mysql server PSHARPE
+
+24) Interface Modules to Commercial Software
+
+Name DSLI Description Info
+------------ ---- -------------------------------------------- ----
+Resolute::
+Resolute::RAPS cd+O Interface to Resolute Software's RAPS CHGOETZE
+
+AltaVista::
+AltaVista::SearchSDK cdcf Perl Wrapper for AltaVista SDK functionality JTURNER
+
+Real::
+Real::Encode i Interface to Progressive Network's RealAudio KMELTZ
+
+HtDig RdpO Interface for the HtDig indexing system JTILLMAN
+MQSeries RdcO IBM's MQSeries messaging product interface WPMOORE
+PQI cdcO Perl Queuing Interface, to MQSeries, MSMQ SIMONJ
+R3 bdcO Interface to SAP R/3 using RFCSDK SCHOEN
+
+Part 3 - Big Projects Registry
+
+This section of the Module List is devoted to listing "Big Projects". I
+don't want to define Big (or even Project) here. Hopefully the items below
+speak for themselves. Almost all are just ideas, though some have been
+dabbled with and some are active projects.
+
+These are ideas for people with very strong skills and lots of time. Please
+talk, and listen, to Larry and the perl5-porters _before_ starting to do any
+work on projects which relate to the core implementation of Perl.
+
+Ask not when these will be implemented, ask instead how you can help
+implement them.
+
+1) Items in the Todo File
+
+The Todo supplied with Perl lists over 50 items in categories ranging from
+"Would be nice to have" to "Vague possibilities".
+
+Contacts: P5P
+
+2) Multi-threading
+
+This is really two projects. True threads (e.g., POSIX) using multiple
+independant perl interpreter structures and simple timeslicing of 'tasks'
+within a single perl interpreter. True threads requires operating system
+support or an external thread library, simple timeslicing does not (and
+should be portable to all platforms).
+
+Malcolm Beattie < mbeattie@sable.ox.ac.uk > has done extensive work in this
+area and is folding this work into Perl now for version 5.005 or 5.006.
+
+Contacts: MICB P5P
+
+3) Object Management Group CORBA & IDL
+
+Work is underway on the COPE mailing list, led by Bart Schuller, to
+implement a Perl binding for CORBA. See http://www.lunatech.com/cope/
+
+Contacts: COPEML BARTS
+
+4) Expand Tied Array Interface
+
+LEN, PUSH, POP, SHIFT, UNSHIFT and a fallback to SPLICE are needed.
+Complicated by very widespread use of arrays within perl internals.
+
+Contacts: P5P CHIPS
+
+5) Extend Yacc To Write XS Code
+
+To quote Larry, "The right way to integrate yacc with Perl would be to have
+it spit out an XS module, presumably." Some version of yacc, like byacc,
+should be converted to spit out an OO .xs and .pm implementing a parser.
+Jake Donham's work so far is available in his CPAN directory
+http://www.cpan.org/authors/id/JAKE .
+
+Contacts: JAKE NI-S P5P
+
+6) Approximate Matching Regular Expressions
+
+Add support into the core for approximate matching m/.../a (like the agrep
+utility).
+
+Contacts: JHI
+
+Part 4 - Standards Cross-reference
+
+This section aims to provide a cross reference between standards that exist
+in the computing world and perl modules which have been written to implement
+or interface to those standards.
+
+It also aims to encourage module authors to consider any standards that
+might relate to the modules they are developing.
+
+4.1) IETF - Internet Engineering Task Force (RFCs)
+
+Standard Description Module Name
+-------- ----------- -----------
+RFC821 Simple Mail Transfer Protocol Net::SMTP
+RFC822 Internet Mail Header Mail::Header
+RFC822 Internet Mail addresses Mail::Address
+RFC867 Daytime Protocol Net::Time
+RFC868 Time Protocol Net::Time
+RFC959 File Transfer Protocol Net::FTP
+RFC977 A minimal NNTP Server NNML::Server
+RFC977 Network News Transfer Protocol Net::NNTP
+RFC1035, RFC1183, RFC1706
+ Domain names, implementation & specification Net::DNS
+RFC1123 Date conversion routines HTTP::Date
+RFC1319 MD2 Message-Digest Algorithm Digest::MD2
+RFC1321 MD5 Message-Digest Algorithm Digest::MD5
+RFC1350 Trivial File Transfer Protocol TFTP, Net::TFTP
+RFC1413 Identification Protocol Net::Ident
+RFC1592 Simple Network Management Protocol SNMP, Net::SNMP
+RFC1738 Uniform Resource Locators URI::URL
+RFC1777 Lightweight Directory Access Protocol Net::LDAP
+RFC1861 Simple Network Pager Protocol Net::SNPP
+RFC1866 Encode/decode HTML entities in a string HTML::Entities
+RFC1939 Post Office Protocol 3 Net::POP3
+RFC1950-1952
+ ZLIB, DEFLATE, GZIP Compress::Zlib
+RFC1960 String Representation of LDAP Search Filters Net::LDAP::Filter
+RFC2045-2049
+ MIME - Multipurpose Internet Mail Extensions MIME::*
+RFC2138 Terminal server authentification and accting RADIUS
+RFC2229 Dictionary Server Net::Dict
+RFC2518 HTTP Extensions for Distributed Authoring HTTP::DAV
+
+4.2) ITU - International Telegraph Union (X.*)
+
+Standard Description Module Name
+-------- ----------- -----------
+X.209 Basic Encoding Rules for ASN.1 Convert::BER
+
+4.3) ISO - International Standards Organization (ISO*)
+
+Standard Description Module Name
+-------- ----------- -----------
+ISO/R 2015-1971
+ Date calculations for the Gregorian calendar Date::DateCalc
+ISO639 Two letter codes for language identification Locale::Language
+ISO3166 Two letter codes for country identification Locale::Country
+
+Part 5 - Who's Who and What's Where
+
+5.1) Information / Contact Reference Details (in alphabetical order)
+
+The following list of email addresses is based on the credentials stored on
+the automated Perl Authors Upload Server (PAUSE). If any of the details is
+not up to date, you're requested to visit
+http://www.cpan.org/modules/04pause.html , where you will find a pointer to
+a CGI script that lets you edit the database entries yourself.
+
+5.2) Perl Frequently Asked Questions (FAQ)
+
+The FAQ is available on all CPAN sites in the directory doc/FAQs (e.g.,
+
+ * http://www.cpan.org/doc/FAQs/
+
+) as well as from the RTFM server where you can find all posted FAQs:
+
+ * ftp://rtfm.mit.edu/pub/usenet/news.answers/perl-faq/
+ * ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/comp/lang/perl/
+
+RTFM mirror sites: North America:
+
+ * ftp://ftp.uu.net/usenet/news.answers
+ * ftp://mirrors.aol.com/pub/rtfm/usenet
+ * ftp://mirror.seas.gwu.edu/pub/rtfm
+
+Europe:
+
+ * ftp://ftp.uni-paderborn.de/pub/FAQ
+ * ftp://ftp.sunet.se/pub/usenet
+
+Asia:
+
+ * ftp://nctuccca.edu.tw/USENET/FAQ
+ * ftp://hwarang.postech.ac.kr/pub/usenet/news.answers
+ * ftp://ftp.hk.super.net/mirror/faqs
diff --git a/doc/devel/memo/TODO b/doc/devel/memo/TODO
new file mode 100644
index 00000000..1187f061
--- /dev/null
+++ b/doc/devel/memo/TODO
@@ -0,0 +1,2 @@
+http://www.FreeBSD.org/tutorials/docproj-primer/writing-style.html
+