Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z
faqs.org - Internet FAQ Archives

comp.lang.perl.modules The Perl 5 Module List (Reusable Software)


[ Usenet FAQs | Web FAQs | Documents | RFC Index | Houses ]
Archive-name: perl-faq/module-list
Revision: 2.49
Posting-Frequency: bi-weekly
URL: http://www.perl.com/CPAN/modules/00modlist.long.html

See reader questions & answers on this topic! - Help others by sharing your knowledge
The Perl 5 Module List       Revision: 2.49 $Date: 1998/08/15 08:53:26 $
======================

Maintained by Tim Bunce and Andreas König <modules@perl.org>

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

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

1)   IETF - Internet Engineering Task Force (RFCs)
2)   ITU - International Telegraph Union (X.*)
3)   ISO - International Standards Organization (ISO*)

Part 5 - Who's Who and What's Where

1)   Information / Contact Reference Details
2)   Perl Frequently Asked Questions (FAQ) Files
3)   Other Perl Archive Sites

Key: '+' indicates a new section or item,
     '!' indicates a changed section or item (typically new modules).


======================================================================

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 will be posted to comp.lang.perl.announce and comp.answers on
a semi-regular basis. It 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. These are the
currently registered CPAN sites:

    Africa
        South Africa
            ftp://ftp.is.co.za/programming/perl/CPAN/
            ftp://ftpza.co.za/pub/mirrors/cpan/
    Asia
        Armenia
            ftp://sunsite.aua.am/pub/CPAN/
        China
            ftp://freesoft.cei.gov.cn/pub/languages/perl/CPAN/
        Hong Kong
            ftp://ftp.hkstar.com/pub/CPAN/
        Israel
            ftp://bioinfo.weizmann.ac.il/pub/software/perl/CPAN/
        Japan
            ftp://ftp.dti.ad.jp/pub/lang/CPAN/
            ftp://ftp.jaist.ac.jp/pub/lang/perl/CPAN/
            ftp://ftp.lab.kdd.co.jp/lang/perl/CPAN/
            ftp://mirror.nucba.ac.jp/mirror/Perl/
        Singapore
            ftp://ftp.nus.edu.sg/pub/unix/perl/CPAN/
        South Korea
            ftp://ftp.bora.net/pub/CPAN/
            ftp://ftp.nuri.net/pub/CPAN/
        Taiwan
            ftp://ftp.wownet.net/pub2/PERL/
        Thailand
            ftp://ftp.cs.riubon.ac.th/pub/mirrors/CPAN/
            ftp://ftp.nectec.or.th/pub/mirrors/CPAN/
    Australasia
        Australia
            ftp://cpan.topend.com.au/pub/CPAN/
            ftp://ftp.sage-au.org.au/pub/compilers/perl/CPAN/
            ftp://mirror.aarnet.edu.au/pub/perl/CPAN/
        New Zealand
            ftp://ftp.auckland.ac.nz/pub/perl/CPAN/
            ftp://sunsite.net.nz/pub/languages/perl/CPAN/
    Central America
        Costa Rica
            ftp://ftp.ucr.ac.cr/pub/Unix/CPAN/
    Europe
        Austria
            ftp://ftp.tuwien.ac.at/pub/languages/perl/CPAN/
        Belgium
            ftp://ftp.kulnet.kuleuven.ac.be/pub/mirror/CPAN/
        Bulgaria
            ftp://ftp.ntrl.net/pub/mirrors/CPAN/
        Croatia
            ftp://ftp.linux.hr/pub/CPAN/
        Czech Republic
            ftp://ftp.fi.muni.cz/pub/perl/
            ftp://sunsite.mff.cuni.cz/Languages/Perl/CPAN/
        Denmark
            ftp://sunsite.auc.dk/pub/languages/perl/CPAN/
        Estonia
            ftp://ftp.ut.ee/pub/languages/perl/CPAN/
        Finland
            ftp://ftp.funet.fi/pub/languages/perl/CPAN/
        France
            ftp://ftp.lip6.fr/pub/perl/CPAN/
            ftp://ftp.oleane.net/pub/mirrors/CPAN/
            ftp://ftp.pasteur.fr/pub/computing/CPAN/
        Germany
            ftp://ftp.archive.de.uu.net/pub/CPAN/
            ftp://ftp.gmd.de/packages/CPAN/
            ftp://ftp.gwdg.de/pub/languages/perl/CPAN/
            ftp://ftp.leo.org/pub/comp/programming/languages/script/perl/CPAN/
            ftp://ftp.mpi-sb.mpg.de/pub/perl/CPAN/
            ftp://ftp.rz.ruhr-uni-bochum.de/pub/CPAN/
            ftp://ftp.uni-erlangen.de/pub/source/CPAN/
            ftp://ftp.uni-hamburg.de/pub/soft/lang/perl/CPAN/
        Greece
            ftp://ftp.ntua.gr/pub/lang/perl/
        Hungary
            ftp://ftp.kfki.hu/pub/packages/perl/CPAN/
        Ireland
            ftp://sunsite.compapp.dcu.ie/pub/perl/
        Italy
            ftp://cis.uniRoma2.it/CPAN/
            ftp://ftp.flashnet.it/pub/CPAN/
        Netherlands
            ftp://ftp.cs.ruu.nl/pub/PERL/CPAN/
            ftp://ftp.EU.net/packages/cpan/
        Norway
            ftp://ftp.uit.no/pub/languages/perl/cpan/
            ftp://sunsite.uio.no/pub/languages/perl/CPAN/
        Poland
            ftp://ftp.man.szczecin.pl/pub/perl/CPAN/
            ftp://ftp.man.torun.pl/pub/CPAN/
            ftp://ftp.pk.edu.pl/pub/lang/perl/CPAN/
            ftp://sunsite.icm.edu.pl/pub/CPAN/
        Portugal
            ftp://ftp.ci.uminho.pt/pub/lang/perl/
            ftp://ftp.ua.pt/pub/CPAN/
        Romania
            ftp://ftp.dntis.ro/pub/mirrors/perl-cpan/
            ftp://ftp.dnttm.ro/pub/CPAN/
        Russia
            ftp://cpan.npi.msu.su/CPAN/
            ftp://ftp.sai.msu.su/pub/lang/perl/CPAN/
        Slovakia
            ftp://ftp.entry.sk/pub/languages/perl/CPAN/
        Slovenia
            ftp://ftp.arnes.si/software/perl/CPAN/
        Spain
            ftp://ftp.etse.urv.es/pub/perl/
            ftp://ftp.rediris.es/mirror/CPAN/
        Sweden
            ftp://ftp.sunet.se/pub/lang/perl/CPAN/
        Switzerland
            ftp://sunsite.cnlab-switch.ch/mirror/CPAN/
        Turkeya
            ftp://sunsite.bilkent.edu.tr/pub/languages/CPAN/
        United Kingdom
            ftp://ftp.demon.co.uk/pub/mirrors/perl/CPAN/
            ftp://ftp.flirble.org/pub/languages/perl/CPAN/
            ftp://ftp.plig.org/pub/CPAN/
            ftp://sunsite.doc.ic.ac.uk/packages/CPAN/
            ftp://unix.hensa.ac.uk/mirrors/perl-CPAN/
    North America
        Canada
            ftp://ftp.crc.ca/pub/packages/perl/CPAN/
            ftp://theory.uwinnipeg.ca/pub/CPAN/
        United States
            ftp://cpan.if.usp.br/pub/mirror/CPAN/
            ftp://ftp.ccs.neu.edu/net/mirrors/ftp.funet.fi/pub/languages/perl/CPAN/
            ftp://ftp.cdrom.com/pub/perl/CPAN/
            ftp://ftp.cise.ufl.edu/pub/perl/CPAN/
            ftp://ftp.cs.colorado.edu/pub/perl/CPAN/
            ftp://ftp.digital.com/pub/plan/perl/CPAN/
            ftp://ftp.duke.edu/pub/perl/
            ftp://ftp.epix.net/pub/languages/perl/
            ftp://ftp.iguide.com/pub/mirrors/packages/perl/CPAN/
            ftp://ftp.metronet.com/pub/perl/
            ftp://ftp.orst.edu/pub/packages/CPAN/
            ftp://ftp.ou.edu/mirrors/CPAN/
            ftp://ftp.rge.com/pub/languages/perl/
            ftp://ftp.sedl.org/pub/mirrors/CPAN/
            ftp://ftp.spu.edu/pub/CPAN/
            ftp://ftp.uwsg.indiana.edu/pub/perl/CPAN/
            ftp://uiarchive.uiuc.edu/pub/lang/perl/CPAN/
    South America
        Brazil
            ftp://ftp.ing.puc.cl/pub/unix/perl/CPAN/
        Chile
            ftp://sunsite.dcc.uchile.cl/pub/Lang/perl/CPAN/
All the files under each of the directories listed above should be
identical at all these sites since they are all automatically
maintained mirrors of the master CPAN site. Please use which ever site
is 'nearest' you.

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 (or modules@franz.ww.tu-berlin.de in case the above
doesn't work). 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 posted to comp.lang.perl.modules, comp.answers and
news.answers bi-weekly with a long expiry time (over a month). The
first place to look for a more recent copy is therefore your own Usenet
spool area.

You should be able to get a copy from one of these places:



Editorial Information and Copyright

This document is Copyright (c) 1997 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.

======================================================================

        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 a category name that includes an underscore 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: 2.99 $=~/\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

   or upload to one of these sites:

   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:

         perl -MModule::Name -e 'func(@ARGV)'


=======================================================================


              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*):
    i   - Idea, listed to gain consensus or as a placeholder
    c   - under construction but pre-alpha (not yet released)
    a/b - Alpha/Beta testing
    R   - Released
    M   - Mature (no rigorous definition)
    S   - Standard, supplied with Perl 5

  S - Support Level:
    m   - Mailing-list
    d   - Developer
    u   - Usenet newsgroup comp.lang.perl.modules
    n   - None known, try comp.lang.perl.modules

  L - Language Used:
    p   - Perl-only, no compiler needed, should be platform independent
    c   - C and perl, a C compiler will be needed
    h   - Hybrid, written in perl with optional C code, no compiler needed
    +   - C++ and perl, a C++ compiler will be needed
    o   - perl and another language other than C or C++

  I - Interface Style
    f   - plain Functions, no references used
    h   - hybrid, object and function interfaces available
    r   - some use of unblessed References or ties
    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

builtin        adcf  A selection of subs destined for the core    GBARR
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

Perl Language Extensions

Alias          bdcf  Convenient access to data/code via aliases   GSAR
Error          adpO  Error/exception handling in an OO-ish way    GBARR
Perl           adcO  Create Perl interpreters from within Perl    GSAR  +
Plthread       i     Multithreading at Perl level (not O/S level) MICB
Protect        bdpf  declare subs private or member               JDUNCAN
Safe           SdcO  Restrict eval'd code to safe subset of ops   MICB

The Perl Compiler

B              aucO  The Perl Compiler                            MICB
O              aucO  Perl Compiler frontends                      MICB

B::
::Graph        bdpr  Perl Compiler backend to diagram OP trees    SMCCAM !

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

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
::Lint         cdpO  Lint-style validator for pod                 NEILB
::Man          cdpr  converter to man page                        KJALB
::MIF          adpO  converter to FrameMaker MIF                  JNH
::Parser       bdpO  Base class for parsing pod syntax            BRADAPP
::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


_______________________________________________________________________

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
FindBin        adpf  Locate current script bin directory          GBARR
DoWhatIWant    i     Does what you want without even asking

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

Test::
::Cases        cdpf  Run group of tests, each with a new perl     DOMO
::Harness      Supf  Executes perl-style tests                    ANDK

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
::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  +
::Peek         adcf  Peek at internal representation of Perl data ILYAZ
::RegExp       adcO  Access perl internal regex functions         ILYAZ
::SmallProf    a     Line-by-line profiler                        ASHTED
::Symdump      RdpO  Perl symbol table access and dumping         ANDK
::TraceFuncs   adpO  Trace funcs by using object destructions     JOEHIL


Usage          bupr  Type and range checking on subroutine args   JACKS

VCS::
::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

Rcs            adcf  Alternate RCS interface (see VCS::RCS)       CFRETER
ClearCase::*   idcf  Environment for ClearCase revision control   BRADAPP
Include        adpO  Parse C header files for use in XS           GBARR
Make           adpO  Makefile parsing, and 'make' replacement     NI-S

_______________________________________________________________________

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          cdcf  Defines ioctl() constants                    KJALB
POSIX          SupO  An interface to most (all?) of POSIX.1       P5P
Shell          Supf  Run shell commands transparently within perl P5P

BSD::
::HostIdent    i     s/gethostname(), s/gethostid()               JHI
::Ipfwgen      bdpf  Generate ipfw(8) filters                     MUIR
::Resource     Rdcf  getrusage(), s/getrlimit(), s/getpriority()  JHI

Async::
::Group        adpO  Deal with simultaneous asynchronous calls    DDUMONT +
::Process      i     class to run sub-processes                   DDUMONT +

Proc::
::Background   bdpO  OS independent background process objects    BZAJAC +
::ExitStatus   cdpf  Interpret and act on wait() status values    ROSCH
::Forkfunc     Rdpf  Simple lwall-style fork wrapper              MUIR
::ProcessTable adcO  Unix process table information               DURIST +
::SafePipe     cdpf  popen() and `` without calling the shell     ROSCH
::Simple       adpO  Fork wrapper with objects                    MSCHILLI
::SyncExec     cdpf  Spawn processes but report exec() errors     ROSCH
::times        adpf  By-name interface to process times function  TOMC

Schedule::
::At           Rd    OS independent interface to the at command   JOSERODR

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


Platform Specific Modules

BeOS::
::base         a     Base perl5 functionality for the BeOS        TSPIN

FreeBSD::
::SysCalls     cdcf  FreeBSD-specific system calls                GARY

Mac::                Macintosh specific modules
::AppleEvents  bmcO  AppleEvent manager and AEGizmos              MCPL
::Components   bmcO  (QuickTime) Component manager                MCPL
::Files        bmcO  File manager                                 MCPL
::Gestalt      bmcO  Gestalt manager: Environment enquiries       MCPL
::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
::Types        bmcO  (Un-)Packing of Macintosh specific types     MCPL

Mac::Apps::
::Anarchie     RdpO  Interface to Anarchie with AppleEvents       CNANDOR
::Launch       RdpO  Launch/Quit Mac OS Apps by creator ID        CNANDOR
::MacPGP       RdpO  Interface to MacPGP 2.6.3 with AppleEvents   CNANDOR
::PBar         RdpO  AppleEvent module for Progress Bar           CNANDOR

Mac::Comm::
::OT_PPP       RdpO  Interface to Open Transport/PPP              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

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

SGI::
::SysCalls     cdcf  SGI-specific system calls                    AMOSS
::GL           adcr  SGI's Iris GL library                        AMOSS
::FM           adcr  SGI's Font Management library                AMOSS

Unix::
::UserAdmin    Rdpf  Interface to Unix Account Information        JZAWODNY +

VMS::
::Filespec     Sdcf  VMS and Unix file name syntax                CBAIL
::Lock         cnco  Object interface to $ENQ (VMS lock mgr)      BHUGHES
::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

Portable Digital Assistants

PDA::
::Pilot        amcO  Interface to pilot-link library              KJALB
::PilotDesktop i     Managing Pilot Desktop databases software    JWIEGLEY

Hardware Drivers

Device::
::SVGA         c     SVGA Graphic card driver                     SCOTTVR

_______________________________________________________________________

5) Networking, Device Control (modems) and InterProcess Communication

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
Socket         Smcf  Defines socket-related constants             GNAT
Ptty           adcf  Pseudo terminal interface functions          NI-S

Net::
::ACAP         adpO  Interface to ACAP Protocol (Internet-Draft)  KJOHNSON
::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
::DNS          bdpO  Interface to the DNS resolver                MFUHR
::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          adcO  Generic support for socket usage             SPIDB
::ICAP         adpO  Interface to ICAP Protocol (Internet-Draft)  KJOHNSON
::IMAP         adpO  Interface to IMAP Protocol (RFC2060)         KJOHNSON
::IRC          cdpO  Internet Relay Chat interface                DSHEPP
::Ident        RdpO  Performs ident (rfc1413) lookups             JPC
::Inet         adcO  Internet (IP) socket usage                   SPIDB
::Interface    a     ifconfig(1) implementation                   SRZ
::LDAP         adpO  Interface to LDAP Protocol (RFC1777)         PLDAP
::LDAPapi      Rdcf  Interface to UMICH and Netscape LDAP C API   CDONLEY
::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      adpO  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
::Pcap         adcr  An interface for LBL's packet capture lib    PLISTER
::Ping         SupO  TCP and ICMP ping                            RMOSE
::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       adcf  Secure Socket Layer (Eric Young's version)   SAMPO
::TCP          adcO  TCP-specific socket usage                    SPIDB
::TFTP         cdpf  Interface to Trivial File Transfer Protocol  GBARR
::Telnet       adpO  Interact with TELNET port or other TCP ports JROGERS
::Time         adpf  Obtain time from remote machines             GBARR
::UDP          cdcO  UDP-specific socket usage                    SPIDB
::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

IPC::
::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
::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
::Signal       cdpf  Translate signal names to/from numbers       ROSCH
::SysV         adcr  shared memory, semaphores, messages etc      JACKS

RPC::                Remote Procedure Calls (see also DCE::RPC)
::pServer      RdpO  Interface for building Perl Servers          JWIED
::pClient      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

Proxy          i     Transport-independent remote processing      MICB
Proxy::
::Tk           ?     Tk transport class for Proxy (part of Tk)    MICB

ToolTalk       adcr  Interface to the ToolTalk messaging service  MARCP
SNMP           RdcO  Interface to CMU's SNMPv2 libsnmp.a          GSM

SNMP::
::Monitor      adpO  Accounting and graphical display             JWIED +

Parallel::
::Pvm          bdcf  Interface to the PVM messaging service       EWALKER

CORBA::
::IOP::IOR     adpO  Decode, munge, and re-encode CORBA IORs      PHILIPA
::IDLtree      adpf  IDL to symbol tree translator                OMKELLOGG +

_______________________________________________________________________

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
::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
::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
::IEEE         i     Interface to ANSI/IEEE Std 754-1985 funcs
::Integral     i     Integration of data                          AQUMSIEH +
::Interpolate  Rdpr  Polynomial interpolation of data             MATKIN
::LinearProg   idp   Linear programming utilities                 JONO
::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
::SigFigs      bdpf  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          JARW
::ematica      adcO  Interface to the powerful Mathematica system ULPFR

Statistics::
::ChiSquare    Rdpf  Chi Square test - how random is your data?   JONO
::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          bdpO  ROC curves with nonparametric conf. bounds   HAKESTLER

Algorithms::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::
::PP           amcf  Automatically generate C code for PDL        PERLDL
::Meschach     amcf  Links PDL to meschach matrix library         EGROSS
::NetCDF       adcr  Reads/Writes NetCDF files from/to PDL objs   DHUNT
::Slatec       amof  Interface to slatec (linpack+eispack) lib.   PERLDL

Array::
::Heap         cdpf  manipulate array elements as a heap          JMM
::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

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

List::
::Utils        cdcf  Extra list/array manipulation functions      JNH

Bit::
::Vector       RdcO  Efficient bit vector and set base class      STBEY

Set::
::IntRange     RdcO  Set of integers (arbitrary intervals, fast)  STBEY
::IntSpan      adpO  Set of integers newsrc style '1,5-9,11' etc  SWMCD
::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
::GetDate      adcf  Yacc based free-format date parser in C      TOMC
::Interval     idpO  Lightweight normalised interval data type    KTORP
::Language     adpO  Multi-language date support                  GBARR
::Manip        Rdpf  Manipulate/parse international dates/times   SBECK
::Parse        Rdpf  ASCII Date parser using regexp's             GBARR
::Time         idpO  Lightweight normalised datetime data type    TIMB

Time::
::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
::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::
::CSA          adcO  interface with calenders such as Sun and CDE KJALB
::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        c     Base class for implementing tied arrays      CHIPS
::CPHash       bdpO  Case preserving but case insensitive hash    CJM
::Cache        adpO  In memory size limited LRU cache             CHAMAS
::DB_Lock      rdpO  Tie DB_File with automatic locking           KWILLIAMS !
::DBI          RdpO  Tie hash to a DBI handle                     LDS
::Dir          adpr  Tie hash for reading directories             GBARR
::File         adpr  Tie hash to files in a directory             AMW
::Handle       RdpO  Base class for implementing tied filehandles STBEY
::IxHash       RdpO  Indexed hash (ordered array/hash composite)  GSAR
::Mem          adcO  Bind perl variables to memory addresses      PMQS
::Quick        i     Simple way to create ties                    TIMB
::ShiftSplice  i     Defines shift et al in terms of splice       LWALL
::SubstrHash   SdpO  Very compact hash stored in a string         LWALL
::TextDir      rdpO  ties a hash to a directory of textfiles      KWILLIAMS !
::Watch        bdpO  Watch variables, run code when read/written  LUSOL

Class::
::Eroot        RdpO  Eternal Root - Object persistence            DMR
::Singleton    bdpO  Implementation of a "Singleton" class        ABW
::Template     Rdpr  Struct/member template builder               DMR
::TOM          RmpO  Transportable Object Model for perl          JDUNCAN

Object::
::Info         Rupf  General info about objects (is-a, ...)       JACKS

Ref            RdpO  Print, compare, and copy perl structures     MUIR

Sort::
::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

FreezeThaw     bdpf  Convert arbitrary objects to/from strings    ILYAZ
Persistent     adpO  (not supported anymore, placeholder)         JPC
Storable       bdcr  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

Data::
::Check        cdpO  Checks values for various data formats       KENHOLM
::Dumper       RdpO  Convert data structure into perl code        GSAR
::Flow         RdpO  Acquire data based on recipes                ILYAZ
::Locations    RdpO  Handles nested insertion points in your data STBEY !

Tree::
::Base         cdpO  Defines a basic binary search tree           MSCHWERN
::Fat          adcO  Embeddable F-Tree Algorithm Suite            JPRIT
::Smart        cdpO  Sorted hash-ish, becomes faster with use     MSCHWERN

_______________________________________________________________________

7) Database Interfaces (see also Data Types)

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
DBI            amcO  Generic Database Interface (see DBD modules) DBIML
DBD::
DBD::
::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
::Fulcrum      cdcO  Fulcrum SearchServer Driver for DB           SHARI
::Informix     amcO  Informix Driver for DBI                      JOHNL
::Informix4    amcO  DBI driver for Informix SE 4.10              GTHYNI
::Ingres       amcO  Ingres Driver for DBI                        HTOUG
::ODBC         amcO  ODBC Driver for DBI                          DBIML +
::Oracle       amcO  Oracle Driver for DBI                        TIMB
::QBase        amcO  QBase Driver for DBI                         BENLI
::Solid        amcO  Solid Driver for DBI                         TWENRICH
::Sybase       amcO  Sybase Driver for DBI                        MEWP
::XBase        ampO  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

Oraperl        Rmpf  Oraperl emulation interface for DBD::Oracle  DBIML
Ingperl        ampf  Ingperl emulation interface for DBD::Ingres  HTOUG

Sybase::
::BCP          RdcO  Sybase BCP interface                         MEWP
::DBlib        RdcO  Sybase DBlibrary interface                   MEWP
::Sybperl      Rdpf  sybperl 1.0xx compatibility module           MEWP
::CTlib        RdcO  Sybase CTlibrary interface                   MEWP

Datascope      Rdcf  Interface to Datascope RDBMS                 DANMQ
LotusNotes     i     Interface to Lotus Notes C/C++ API           JONO
Msql           RmcO  Mini-SQL database interface                  JWIED
Mysql          RmcO  mysql database interface                     JWIED
ObjStore       Rm+O  ObjectStore OODBMS Interface                 JPRIT
Pg             Rdcf  PostgreSQL SQL database interface            MERGL
Postgres       Rdcr  PostgreSQL interface with Perl5 coding style VKHERA
Sprite         RdpO  Limited SQL interface to flat file databases SHGUN
Xbase          bdpf  Read Xbase files with simple IDX indexes     PRATP
XBase          bdpO  Read/write interface to XBase files          JANPAZ

Tied Hash File Interfaces:

AnyDBM_File    Sup   Uses first available *_File module above     P5P
CDB_File       adc   Tie to CDB (Bernstein's constant DB) files   TIMPX
DBZ_File       adc   Tie to dbz files (mainly for news history)   IANPX
DB_File        Suc   Tie to DB files                              PMQS
GDBM_File      Suc   Tie to GDBM files                            P5P
MLDBM          RdpO  Transparently store multi-level data in DBM  GSAR
NDBM_File      Suc   Tie to NDBM files                            P5P
ODBM_File      Suc   Tie to ODBM files                            P5P
SDBM_File      Suc   Tie to SDBM files                            P5P

AsciiDB::
::Parse        i     Generic text database parsing                MICB
::TagFile      adpO  Tie class for a simple ASCII database        JOSERODR

Db::
::Ctree        bdcr  Faircom's CTREE+ database interface          REDEN
::Documentum   bdcf  Documentum EDMS Perl client interface        BRIANSP
::dmObject     cdpO  Object-based interface to Documentum EDMS    JGARRISON +

DTREE          cdcf  Interface to Faircom DTREE multikey ISAM db  JWAT
Fame           adcO  Interface to FAME database and language      TRIAS
MARC           i     Interface to MARC format (bibliography)      PEM
NetCDF         bmcr  Interface to netCDF API for scientific data  SEMM
Stanza         i     Text format database used by OSF and IBM     JHI

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

_______________________________________________________________________

8) User Interfaces (Character and Graphical)

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
Term::
::ANSIColor    Rdpf  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
::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
::Screen       RdpO  Basic screen + input class (uses Term::Cap)  MRKAE
::Size         adcf  Simple way to get terminal size              TIMPX

Term::ReadLine::
::Perl         RdpO  GNU Readline history and completion in Perl  ILYAZ
::Gnu          RdcO  GNU Readline XS library wrapper              HAYASHI

Event          adpO  Perl event loop                              GBARR

Major Character User Interface Modules:

Curses         adcO  Character screen handling and windowing      WPS
NCurses        cdcO  Curses using the ncurses package             WPS
PerlMenu       Mdpf  Curses-based menu and template system        SKUNZ
Cdk            RdcO  Collection of Curses widgets                 GLOVER
PV             bmpO  PerlVision curses windowing (OO widgets etc) AGUL

Emacs::
::Lisp         adcO  Support for perl embedded in GNU Emacs       JTOBEY

Tk X Windows User Interface Modules:

Tk             bmcO  Object oriented version of Tk v4             TKML

See the Tk module list at http://www.perl.com/CPAN/modules/by-module/Tk/tk-modlist.html

Other Major X Windows User Interface Modules:

Gtk            cdcO  binding of the Gtk library used by GIMP      KJALB
Gimp           bdcO  Interface to write plug-ins for The Gimp     MLEHMANN
Sx             Rdcf  Simple Athena widget interface               FMC
Fresco         cd+O  Interface to Fresco (post X11R6 version)     BPETH
Qt             ad+O  Interface to the Qt toolkit                  AWIN

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          adcO  X11 library interface                        KENFOX
::Motif        bdcO  Motif widget set interface                   KENFOX
::Protocol     adpO  Raw interface to X Window System servers     SMCCAM
::Toolkit      adcO  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
::Xforms       bdcO  provides the binding to the xforms library   MARTINB

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
-----------    ----  -------------------------------------------- -----
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::
::Prolog       adpO  An implementation of Prolog                  JACKS
::PGForth      i     Peter Gallasch's Forth implementation        PETERGAL

SICStus        adcO  Interface to SICStus Prolog Runtime          CBAIL

Fortran::
::NameList     adpf  Interface to FORTRAN NameList data           SGEL

Clips          adpO  Interface to the Expert System Clips         MSULLIVAN +

ShellScript::
::Env          adpO  Simple sh and csh script generator           SVENH +

_______________________________________________________________________

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 +
::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
::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        adpf  flock() wrapper.  Auto-create locks          MUIR
::Glob         adpf  Filename globing (ksh style)                 TYEMQ
::Listing      bdpf  Parse directory listings                     GAAS
::Lock         adcf  File locking using flock() and lockf()       JHI
::Path         Supf  File path and name utilities                 P5P
::Slurp        bdpf  Read/write/append files quickly              MUIR
::Sort         adpf  Emulate some functions of sort(1)            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
::MultiTail    adpO  Tail multiple files                          SGMIANO
::lockf        bdcf  Interface to lockf system call               PHENSON
::stat         Supf  A by-name interface for the stat function    TOMC

Filesys::
::Df           Rdpr  Disk free based on Filesys::Statvfs          IGUTHRIE !
::DiskFree     adpO  OS independant parser of the df command      ABARCLAY +
::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
::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
::Edit         adpf  Assorted handy string editing functions      TOMC
::Parity       adpf  Parity (odd/even/mark/space) handling        WINKO
::Scanf        Rdpf  Implementation of C sscanf function          JHI
::ShellQuote   adpf  Quote string for safe passage through shells ROSCH

Language text related modules

Text::
::Abbrev       Supf  Builds hash of all possible abbreviations    P5P
::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 !
::Invert       cdpO  Create/query inv. index of text entities     NNEUL
::Metaphone    adpf  Phonetic encoding.  A modern Soundex         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
::Soundex      Supf  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
::Template     bdpO  Expand template text with embedded perl      MJD
::Vpp          RdpO  Versatile text pre-processor                 DDUMONT !
::Wrap         Sdpf  Wraps lines to make simple paragraphs        MUIR

Other Text:: modules (these should be under String:: but pre-date it)

Text::
::Balanced     Rdpf  Extract balanced-delimiter substrings        DCONWAY
::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::
::EN           i     Namespace for English language modules
::PT           bupf  Namespace for Portugese language modules     EGROSS

Lingua::EN::
::Inflect      Rdpf  English singular->plural and "a"->"an"       DCONWAY
::Cardinal     i     Convert numbers to words                     HIGHTOWE
::Ordinal      i     Convert numbers to words                     HIGHTOWE

ERG            Rdpf  An extensible report generator framework     PHOENIXL +

Font::
::AFM          RdpO  Parse Adobe Font Metric files                GAAS
::TFM          adpO  Read info from TeX font metric files         JANPAZ

Number::
::Format       adpO  Package for formatting numbers for display   WRW

Parse::
::ePerl        Rdcr  Embedded Perl (ePerl) parser                 RSE
::Lex          adpO  Generator of lexical analysers               PVERD
::RecDescent   RdpO  Recursive descent parser generator           DCONWAY
::Yapp         adpO  Generate Perl OO parsers from LALR1 grammars FDESAR +

Search::
::Dict         Supf  Search a dictionary ordered text file        P5P

SGML::
::Element      cdpO  Build a SGML element structure tree          LSTAF
::SPGrove      bd+O  Load SGML, XML, and HTML files               KMACLEOD
SGMLS          RdpO  A Post-Processor for SGMLS and NSGMLS        INGOMACH

RTF::
::Base         i     Classes for Microsoft Rich Text Format       NI-S

SQL::
::Statement    adcO  Small SQL parser and engine                  JWIED
::Builder      adpO  OO interface for creating SQL statements     ZENIN +

TeX::
::DVI          adpO  Methods for writing DVI (DeVice Independent) JANPAZ
::Hyphen       adpO  Hyphenate words using TeX's patterns         JANPAZ

FrameMaker::   cdpO  Top level FrameMaker interface               PEASE
::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        adpO  Eliza algorithm encapsulated in an object    JNOLAN

Quiz::
::Question     cdpO  Questions and Answers wrapper                RFOLEY

_______________________________________________________________________

12) Option, Argument, Parameter and Configuration File Processing

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
Getopt::
::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         Supf  Advanced option handling                     JV
::Mixed        Rdpf  Supports both long and short options         CJM
::Regex        ad    Option handling using regular expressions    JARW
::Simple       RdpO  A simplified interface to Getopt::Long       RSAVAGE
::Std          Supf  Implements basic getopt and getopts          P5P
::Tabular      adpr  Table-driven argument parsing with help text GWARD

ConfigReader   cdpO  Read directives from configuration file      AMW
Resources      bdpf  Application defaults management in Perl      FRANCOC
IniConf        bdpO  Read/Write INI-Style configuration files     SHUTTON

App::                General application development tools
::Config       bdpO  Configuration file mgmt                      ABW


_______________________________________________________________________

13) Internationalization and Locale

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
I18N::
::Charset      Rdpf  Character set names and aliases              MTHURN +
::Collate      Sdpr  Locale based comparisons                     JHI
::LangTags     Rdpf  compare & extract language tags (RFC1766)    SBURKE
::WideMulti    i     Wide and multibyte character string          JHI

Locale::
::Country      Rdpf  ISO 3166 two letter country codes            NEILB
::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
::gettext      Rdcf  Multilanguage messages                       PVANDRY

Unicode::
::UCS2         adpO  Unicode UCS-2 encoded strings                GAAS
::UCS4         i     Unicode UCS-4 encoded strings                GAAS
::CType        i     Classification of Unicode chars              GAAS

Modules related to countries or national conventions

No::
::Dato         adpf  Norwegian stuff                              GAAS
::KontoNr      adpf  Norwegian stuff                              GAAS
::PersonNr     adpf  Norwegian stuff                              GAAS
::Sort         adpf  Norwegian stuff                              GAAS
::Telenor      adpf  Norwegian stuff                              GAAS

Cz::
::Sort         adpO  Czech sorting                                JANPAZ
::Cstocs       adpO  Charset reencoding                           JANPAZ

_______________________________________________________________________

14) Authentication, Security and Encryption (see also Networking)

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
User::
::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
::Sign         bdpr  Create and check PGP signatures, securely    RRA

DES            adcf  DES encryption (libdes)                      EAYNG
Des            adcf  DES encryption (libdes)                      MICB
MD5            RdcO  MD5 message digest algorithm                 NWINT
SHA            adcO  NIST SHA message digest algorithm            UWEH
GSS            adcO  Generic Security Services API (RFC 2078)     MSHLD

Crypt::
::CBC          adpO  Cipherblock chaining for Crypt::DES/IDEA     LDS
::DES          a     DES encryption (libdes)                      GARY
::IDEA         a     International Data Encryption Algorithm      GARY
::PRSG         a     160 bit LFSR for pseudo random sequences     GARY

Authen::
::ACE          adcO  Interface to Security Dynamics ACE (SecurID) DCARRIGAN
::Krb5         cdcO  Interface to Kerberos API                    JHORWITZ
::PAM          adcf  Interface to PAM library                     NIKIP
::TacacsPlus   adcO  Authentication on tacacs+ server             MSHOYHER

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::
::Escape       ampf  General URI escaping/unescaping functions    LWWWP
::URL          RmpO  Uniform Resource Locator objects             LWWWP

CGI::
::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
::ErrorWrap    bdpf  Trap warnings and die and convert into HTML  TOMC
::Imagemap     adpO  Imagemap handling for specialized apps       MIKEH
::LogCarp      adpf  Error, log, bug streams, httpd style format  MIKEKING
::MiniSvr      RmpO  Fork CGI app as a per-session mini server    CGIP
::Out          adpf  Buffer CGI output and report errors          MUIR
::Query        adpO  Parse CGI quiry strings                      MPECK
::Request      RmpO  Parse CGI request and handle form fields     CGIP
::Response     ampO  Response construction for CGI applications   CGIP
::Screen       adpO  Create multi screen CGI-scripts              ULPFR
::Session      cmpO  Maintain session/state information           MGH
::Validate     adpO  Advanced CGI form parser                     ZENIN

HTML::
::QuickCheck   cdpf  Fast simple validation of HMTL text          YLU
::Base         adpO  Object-oriented way to build pages of HTML   GAND
::Simple       bdpf  Simple functions for generating HTML         TOMC
::EP           adpO  Modular, extensible Perl embedding           JWIED +
::Element      ampO  Representation of a HTML parsing tree        LWWWP
::Embperl      bdcf  Embed Perl in HTML                           GRICHTER
::Entities     bmpf  Encode/decode HTML entities                  LWWWP
::Formatter    ampO  Convert HTML to plain text or Postscript     LWWWP
::Mason        bdpO  Build sites from modular Perl/HTML blocks    JSWARTZ
::Parse        ampO  Parse HTML documents                         LWWWP
::ParseForm    i     Parse and handle HTML forms via templates    NMONNET
::SimpleParse  bdpO  Bare-bones HTML parser                       KWILLIAMS +
::Stream       RdpO  HTML output stream                           ERYQ
::Table        bnpO  Write HTML tables via spreadsheet metaphor   STLACY
::TableLayout  bdpO  an extensible OO layout manager              SFARRELL

HTTP::
::Date         bmpf  Date conversion for HTTP date formats        LWWWP
::Headers      bmpO  Class encapsulating HTTP Message headers     LWWWP
::Message      bmpO  Base class for Request/Response              LWWWP
::Request      bmpO  Class encapsulating HTTP Requests            LWWWP
::Response     bmpO  Class encapsulating HTTP Responses           LWWWP
::Status       bmpf  HTTP Status code processing                  LWWWP
::Negotiate    bmpf  HTTP content negotiation                     LWWWP

HTTP::Request::
::Form         RdpO  Generates HTTP::Request objects out of forms GBAUER

HTTPD::
::UserAdmin    bdpO  Management of server user databases          DOUGM
::GroupAdmin   bdpO  Management of server group databases         DOUGM
::Authen       bdpO  Preform HTTP Basic and Digest Authentication DOUGM
::Config       cdpO  Management of server configuration files     DOUGM
::Access       cdpO  Management of server access control files    DOUGM

WWW::
::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

LWP::                Libwww-perl-5
::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::
::Base64       Rdpf  Encode/decode Base 64 (RFC 1521)             GAAS
::QuotedPrint  Rdpf  Encode/decode Quoted-Printable               GAAS
::Decoder      adpO  OO interface for decoding MIME messages      ERYQ
::Entity       adpO  An extracted and decoded MIME entity         ERYQ
::Head         adpO  A parsed MIME header                         ERYQ
::IO           adpO  Simple I/O handles for filehandles/scalars   ERYQ
::Latin1       adpO  Encoding 8-bit Latin-1 as 7-bit ASCII        ERYQ
::Lite         RdpO  Single module for composing simple MIME msgs ERYQ
::Parser       adpO  Parses streams to create MIME entities       ERYQ
::ParserBase   adpO  For building your own MIME parser            ERYQ
::Words        cdpf  Encode/decode RFC1522-escaped header strings ERYQ

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     bdpf  Get, put, copy, delete files located by URL  BZAJAC

CCI            i     Common Client Interface for WWW browsers     DOUGM
CGI_Lite       MnpO  Light-weight interface for fast apps         SHGUN
FCGI           Rdcr  Fast CGI                                     SKIMO
Apache         RdcO  Interface to the Apache server API           DOUGM

For Apache see also http://www.perl.com/CPAN/modules/by-module/Apache/apache-modlist.html


_______________________________________________________________________

16) Server and Daemon Utilities

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
EventServer    RupO  Triggers objects on i/o, timers & interrupts JACKS
::Functions    Rupf  Utility functions for initializing servers   JACKS
::*Wrapper     Rupf  Bunch of wrappers for different server types 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

NetServer::
::Generic      adpO  generic OOP class for internet servers       CHSTROSS +

_______________________________________________________________________

17) Archiving, Compression and Conversion

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
Compress::
::Zlib         RdcO  Interface to the Info-Zip zlib library       PMQS

Convert::
::BER          adpO  Class for encoding/decoding BER messages     GBARR
::BinHex       cdpO  Convert to/from RFC1741 HQX7 (Mac BinHex)    ERYQ
::EBCDIC       adpf  ASCII to/from EBCDIC                         CXL
::Recode       ?     Mapping functions between character sets     GAAS
::SciEng       i     Convert scientific postfix scale factors     COLINK
::Translit     MdpO  String conversion among many character sets  GENJISCH
::UU           bdpf  UUencode and UUdecode                        ANDK

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

_______________________________________________________________________

18) Images, Pixmap and Bitmap Manipulation, Drawing and Graphing

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
GD             adcO  GIF editing/painting/manipulation            LDS
OpenGL         adcf  Interface to OpenGL drawing/imaging library  ADESC
PGPLOT         Rdof  PGPLOT plotting library - scientific graphs  KGB
PixDraw        adcO  Drawing and manipulating true color images   KSB
GIFgraph       RdpO  Package to generate GIF graphs, uses GD.pm   MVERB

VRML::         RdpO  VRML methods independent of specification    HPALM
::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::
::Simple       idcO  Simple drawing primitives                    NEERI
::Turtle       idp   Turtle graphics package                      NEERI

Image::
::Colorimetry  cdpO  transform colors between colorspaces         JONO
::Grab         RdpO  Grabbing images off the Internet             MAHEX
::Magick       RdcO  Read, query, transform, and write images     JCRISTY
::Size         Rdpf  Measure size of images in common formats     RJRAY

Chart::
::Base         a     Business charts                              MKRUSE
::Plot         bdcO  Graph two-dimensional data (uses GD.pm)      SMORTON

T3D            cdpO  Realtime extensible 3D rendering             GJB
ThreeD         i     Namespace root for all kinds of 3D modules   ADESC
RenderMan      a     Manipulate RenderMan objects                 GMLEWIS

_______________________________________________________________________

19) Mail and Usenet News

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
Mail::
::Address      adpf  Manipulation of electronic mail addresses    GBARR
::Alias        adpO  Reading/Writing/expanding of mail aliases    GBARR
::Cap          adpO  Parse mailcap files as specified in RFC 1524 GBARR
::Field        RdpO  Base class for handling mail header fields   GBARR
::Folder       adpO  Base-class for mail folder handling          KJOHNSON
::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
::Send         adpO  Simple interface for sending mail            GBARR
::UCEResponder i     Spamfilter                                   CHSTROSS
::Util         adpf  Mail utilities (for by some Mail::* modules) GBARR


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

_______________________________________________________________________

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
Memoize        adpr  Cache results of individual function calls   MJD
Religion       adpr  Control where you go when you die()/warn()   KJALB

Hook::
::PrePostCall  adpO  Add actions before and after a routine       PVERD

_______________________________________________________________________

21) File Handle, Directory Handle and Input/Output Stream Utilities

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
IO::
::AtomicFile   adpO  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
::Format       adpO  Treat perl formats as objects                SBECK
::Handle       cdpO  Base class for input/output handles          GBARR
::Lines        bdpO  I/O handle to read/write to array of lines   ERYQ
::Pipe         cdpO  Methods for pipe handles                     GBARR
::Ptty         adcf  Pseudo terminal interface functions          GBARR
::Pty          cdpO  Methods for pseudo-terminal allocation etc   PEASE
::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         bdpf  POSIX compliant stty interface               AUSCHUTZ
::Tee          RdpO  Multiplex output to multiple handles         KENSHAN
::Wrap         RdpO  Wrap old-style FHs in standard OO interface  ERYQ
::WrapTie      adpO  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::
::Topics       Rdpf  Control flow of topic based logging messages JARW

Expect         RdpO  Close relative of Don Libes' Expect in perl  AUSCHUTZ +

_______________________________________________________________________

22) Microsoft Windows Modules

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
Win32::
::AdminMisc    Rdcf  Misc admin and net functions                 DAVEROTH
::ChangeNotify bdcO  Monitor changes to files and directories     CJM
::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
::GD           RdcO  Win32 port of the GD extension (gif module)  DAVEROTH
::IPC          bdcO  Base class for Win32 synchronization objects CJM
::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          adcf  Interface to OLE API functions               WIN32
::Pipe         Rd+O  Named Pipes and assorted function            DAVEROTH
::Process      adcf  Interface to Win32 Process functions         WIN32
::Registry     adcf  Interface to Win32 Registry functions        WIN32
::Semaphore    bdcO  Use Win32 semaphore objects for IPC          CJM
::SerialPort   adpO  Win32 Serial functions/constants/interface   BBIRTH
::WinError     adcf  Interface to Win32 WinError functions        WIN32


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
::Registry     adcf  Win32 Registry functions/constants           TYEMQ
::File         cdcf  Win32 file/dir functions/constants           TYEMQ
::Window       cdcf  Win32 Windowing functions/constants          TYEMQ
::WinStruct    cdcf  Routines for Win32 Windowing data structures TYEMQ
::Console      cdcf  Win32 Console Window functions/consts        TYEMQ

_______________________________________________________________________

23) Miscellaneous Modules

Name           DSLI  Description                                  Info
-----------    ----  -------------------------------------------- -----
Archie         Rdpf  Archie queries via Prospero ARDP protocol    GBOSS
Bundle         i     Namespace reserved for modules collections   ANDK
CPAN           RdpO  Perl Archive browse and download             ANDK
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
Wais           Rdcf  Interface to the freeWAIS-sf libraries       ULPFR

Business::
::CreditCard   Rdpf  Credit card number check digit test          JONO
::ISBN         RdpO  Work with ISBN as objects                    BDFOY

Bio::
::*            i     Utilities for molecular biology              SEB

Remedy::
::AR           adcO  Interface to Remedy's Action Request API     RIK

ARS            Rd??  Interface to Remedy's Action Request API     JMURPHY

Psion::
::Db           idpO  Handle Psion palmtop computer database files IANPX

HP200LX::
::DB           cdpO  Handle HP 200LX palmtop computer database    GGONTER
::DBgui        cdpO  Tk base GUI for HP 200LX db files            GGONTER

Agent          cdpO  Transportable Agent module                   SPURKIS
NetObj         adpO  Module loading in real time over TCP/IP      JDUNCAN

Penguin        RdpO  Remote Perl in Secure Environment            AMERZKY +
Penguin::
::Easy         RdpO  Provides quick, easy access to Penguin API   JDUNCAN

BarCode::
::UPC          i     Produce PostScript UPC barcodes              JONO

Audio::
::Sox          i     sox sound library as one or more modules     NI-S

MIDI           cdpO  Object interface to MIDI files               SBURKE +

Logfile        RdpO  Generic methods to analyze logfiles          ULPFR

SyslogScan::   
::SyslogEntry  bdpO  Parse UNIX syslog                            RHNELSON
::SendmailLine bdpO  Summarize sendmail transactions              RHNELSON

Chemistry::
::Elements     RdpO  Working with Chemical Elements               BDFOY
::Isotopes     idpO  extends Elements to deal with isotopes       BDFOY

FAQ::
::OMatic       RdpO  A CGI-based FAQ/help database maintainer     JHOWELL

Geo::
::METAR        Rdpf  Process Aviation Weather (METAR) Data        JZAWODNY +
::WeatherNOAA  Rdpf  Current/forecast weather from NOAA           MSOLOMON +

Games::
::WordFind     bdpO  Generate word-find type puzzles              AJOHNSON

Cisco::
::Conf         adpO  Cisco router administratian via TFTP         JWIED

Silly::
::StringMaths  adpf  Do maths with letters and strings            SKINGTON +

_______________________________________________________________________

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 +

=======================================================================


           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

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

Contacts: JAKE NI-S P5P


6) Approximate Matching Regular Expressions

Add support 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.

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
RFC1321    MD5 Message-Digest Algorithm                  MD5
RFC1413    Identification Protocol                       Net::Ident
RFC1521    Encode/decode quoted-printable strings        MIME::QuotedPrint
RFC1592    Simple Network Management Protocol            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
_______________________________________________________________________


2)   ITU - International Telegraph Union (X.*)
Standard   Description                                   Module Name
--------   -----------                                   -----------
X.209      Basic Encoding Rules for ASN.1                Convert::BER
_______________________________________________________________________
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
			  ==================
1) Information / Contact Reference Details (in alphabetical order)


  Ref      Contact Details
  -----    --------------------------------------------------------------
  ABARCLAY Alan Barclay <gorilla@elaine.drink.com>
  ABH      Ask Bjřrn Hansen <ask@netcetera.dk>
  ABIGAIL  Abigail <abigail@fnx.com>
  ABURLISON Alan Burlison <Alan.Burlison@UK.Sun.COM>
  ABW      Andy Wardley <abw@cre.canon.co.uk>
  ACALPINI Aldo Calpini <dada@divinf.it>
  ACH      Achim Bohnet <ach@mpe.mpg.de>
  ADESC    Alligator Descartes <descarte@arcana.co.uk>
  AEPAGE   Andrew E Page <aep@world.std.com>
  AGENTML  Mailing List For Perl5 Agents
           Send email to perl5-agentr@epitome.hawk.igs.net with the
           body "subscribe <emailaddr>"
  AGIERTH  Andrew P. J. Gierth <andrew@erlenstar.demon.co.uk>
  AGUL     Ashish Gulhati <hash@netropolis.org>
  AJOHNSON Andrew L Johnson <ajohnson@gpu.srv.ualberta.ca>
  AKSTE    Alan K. Stebbens <aks@sgi.com>
  ALANCITT Alan Citterman <alan@mfgrtl.com>
  ALANSZ   Alan Schwartz <alansz@uic.edu>
  ALLENS   E. Allen Smith <easmith@beatrice.rutgers.edu>
  ALSCH    Alan Scheinine <scheinin@crs4.it>
  ALTITUDE Alex Tang <altitude@cic.net>
  AMERZKY  Andre Merzky <merzky@physik.hu-berlin.de>
  AMOSS    Amos Shapira <amoss@cs.huji.ac.il>
  AMW      Andrew Wilcox <andrew_wilcox@gwi.net>
  ANDK     Andreas König <a.koenig@franz.ww.TU-Berlin.DE>
  ANDREWF  Andrew Ford <andrew@icarus.demon.co.uk>
  ANDYD    Andy Dougherty <doughera@lafcol.lafayette.edu>
  ANDYGLEW Andy Glew <glew@cs.wisc.edu>
  ANTRO    Antonio Rosella <anface@yahoo.com>
  APML     The Perl/Apache Mailing List
           Mail to majordomo@apache.org with body "subscribe modperl"
  AQUMSIEH Ala Qumsieh <Ala.Qumsieh@matrox.com>
  ARSML    The ARSperl Mailing List
           See http://arsinfo.cit.buffalo.edu/ for mor info.
  ASHER    Aaron Sherman <ajs@ajs.com>
  ASHTED   Ted Ashton <ashted@southern.edu>
  ASTEAM   ActiveState development team <dev@ActiveState.com>
  AUSCHUTZ Austin Schutz <tex@habit.com>
  AWIN     Ashley Winters <jql@accessone.com>
  AWRIGLEY Ave Wrigley <wrigley@cre.canon.co.uk>
  BARTLEY  Eric Bartley <bartley@purdue.edu>
  BARTS    Bart Schuller <schuller@lunatech.com>
  BASKAR   Baskar S <baskar@india.ti.com>
  BBIRTH   Bill Birthisel <wcbirthisel@alum.mit.edu>
  BBUM     Bill Bumgarner <bbum@friday.com>
  BDFOY    brian d foy <comdog@computerdog.com>
  BENLI    Ben Lindstrom <mouring@netnet.net>
  BHOLZMAN Benjamin Holzman <bholzman@bender.com>
  BHUGHES  Brad Hughes <brad@tgsmc.com>
  BJEPS    Brian Jepson <bjepson@conan.ids.net>
  BLANTREWI Boris Lantrewitz <lantrewi@do.isst.fhg.de>
  BMEEKINGS Brian Meekings <meekings@idi-middleware.com>
  BMIDD    William J. Middleton <wjm@metronet.com>
  BMORGAN  Bruce Morgan <morgan@networks.curtin.edu.au>
  BOADLER  Bo Adler <thumper@ugcs.caltech.edu>
  BOBSIDE  Bob Sidebotham <rns@fore.com>
  BPANNIER Benjamin Pannier <karo@artcom.net>
  BPETH    Bill Petheram <petheram@acm.org>
  BPOWERS  Brent B. Powers <powers@dti.net>
  BRADAPP  Brad Appleton <bradapp@enteract.com>
  BRIAN    Brian H. Dunford-Shore <brian@ibc.wustl.edu>
  BRIANSP  Brian W. Spolarich <briansp@ans.net>
  BROCSEIB Broc Seib <bseib@purdue.edu>
  BSUGARS  Benjamin Sugars <bsugars@canoe.ca>
  BZAJAC   Blair Zajac <blair@gps.caltech.edu>
  CAADAMS  Clifford A. Adams <caadams@zynet.com>
  CARL     Carl Declerck <carl@miskatonic.inbe.net>
  CARLADLER Carl Adler <carl_adler@idx.com>
  CBAIL    Charles Bailey <bailey@genetics.upenn.edu>
  CCWF     Charles C. Fu <ccwf@bacchus.com>
  CDONLEY  Clayton Donley <donley@wwa.com>
  CDYBED   Calle Dybedahl <calle@lysator.liu.se>
  CEVANS   Carey Evans <c.evans@clear.net.nz>
  CFRETER  Craig Freter <freter@freter.com>
  CGIP     The CGI-Perl Developers mailing list
           Mailing list is temporarily closed
  CHAMAS   Joshua Chamas <chamas@alumni.stanford.org>
  CHGEUER  Christian H. Geuer <christian.geuer@crypto.gun.de>
  CHGOETZE Christian Goetze <perl@resolute.com>
  CHIPS    Chip Salzenberg <chip@pobox.com>
  CHOUPT   Chuck Houpt <choupt@world.std.com>
  CHOWARTH Colin Howarth <colin@muc.de>
  CHRISCHU Christian Schultze <Christian_Schultze@b.maus.de>
  CHRMASTO Christopher Masto <chris@netmonger.net>
  CHRWOLF  Christophe Wolfhugel <wolf@pasteur.fr>
  CHSTROSS Charlie Stross <charlie@antipope.org>
  CHTHORMAN Chris Thorman <chris@thorman.com>
  CHTTRAX  Christoph T. Traxler <Christoph.T.Traxler@theo.physik.uni-giessen.de>
  CJM      Christopher J. Madsen <ac608@yfn.ysu.edu>
  CLINTDW  Clinton Wong <clintdw@netcom.com>
  CMASON   Chris Mason <cmason@ros.res.cmu.edu>
  CNANDOR  Chris Nandor <pudge@pobox.com>
  COLINK   Colin Kuskie <ckuskie@cadence.com>
  COOPERCL Clark Cooper <coopercl@sch.ge.com>
  COPEML   The CORBA Perl Mailinglist
           To join the list, send a mail with just the word subscribe
           in the body to cope-request@lunatech.com (See
           http://www.lunatech.com/cope)
  CTDEAN   Chris Dean <ctdean@aig.jpl.nasa.gov>
  CXL      Chris Leach <leachcj@bp.com>
  DALEAMON Dale Amon <amon@gpl.com>
  DALGL    Bob Dalgleish <bob.dalgleish@sk.sympatico.ca>
  DANIEL   Daniel <daniel@electricrain.com>
  DANKOGAI Dan Kogai <dankogai@dan.co.jp>
  DANMQ    Daniel M. Quinlan <danq@colorado.edu>
  DAVEROTH Dave Roth <rothd@roth.net>
  DBEAZLEY Dave Beazley <dmb@asator.lanl.gov>
  DBIML    The DBI Mailing Lists
           Subscribe via http://www.fugue.com/dbi. If you can't do
           that then mail to dbi-REQUEST@fugue.com and ask (the human,
           Ted Lemon) to subscribe you to one or more of dbi-announce,
           dbi-users, or dbi-dev.
  DBONNER  David Bonner <dbonner@cs.bu.edu>
  DBRESH   Doug Breshears <breshear@eonet.com>
  DCARRIGAN Dave Carrigan <Dave.Carrigan@iplenergy.com>
  DCEPML   The DCE-Perl mailing list
           Mail to majordomo@lists.csupomona.edu with body "subscribe
           dce-perl <your-address>"
  DCONWAY  Damian Conway <damian@cs.monash.edu.au>
  DDUMONT  Dominique Dumont <Dominique_Dumont@grenoble.hp.com>
  DENWA    Dennis Watson <dwatson@netguide.com>
  DEVEN    Deven T. Corzine <deven@ties.org>
  DEWEG    Douglas E. Wegscheid <wegscd@whirlpool.com>
  DHUNT    Douglas Hunt <dhunt@ucar.edu>
  DIONALM  Dion Almaer <dion@member.com>
  DJBECKETT Dave Beckett <D.J.Beckett@ukc.ac.uk>
  DKWILSON Damion K. Wilson <dkw@rcm.bm>
  DMACKS   Daniel Macks <dmacks@netspace.org>
  DMEGG    David Megginson <dmeggins@microstar.com>
  DMO      Darryl Okahata <darrylo@sr.hp.com>
  DMR      Dean Roehrich <roehrich@cray.com>
  DNAD     Dave Nadler <nadler@ug.eds.com>
  DOMO     Dominic Dunlop <domo@slipper.ip.lu>
  DOUGB    Doug Bagley <doug@bagley.org>
  DOUGL    Douglas Lankshear <DougL@ActiveState.com>
  DOUGM    Doug MacEachern <dougm@pobox.com>
  DSB      David Boyce <dsb@world.std.com>
  DSHEPP   Doug "Sirilyan" Sheppard <sirilyan@link.ca>
  DSOUFLIS Dimitrios Souflis <dsouflis@altera.gr>
  DSTALDER Darren Stalder <torin@daft.com>
  DSUGAL   Dan Sugalski <sugalskd@osshe.edu>
  DTOWN    David M. Town <dtown@fore.com>
  DURIST   Dan Urist <durist@world.std.com>
  DVKLEIN  Daniel V. Klein <dan@klein.com>
  EAYNG    Eric Young <eay@mincom.oz.au>
  EDJORDAN Ed Jordan <ed@fidalgo.net>
  EDLIU    Edward Liu <dhliu@solar.csie.ntu.edu.tw>
  EESTABROO Eric Estabrooks <estabroo@ispn.com>
  EGROSS   Etienne Grossmann <etienne@isr.isr.ist.utl.pt>
  EHOOD    Earl Hood <ehood@medusa.acs.uci.edu>
  ELMAR    Elmar Schalueck <Elmar.Schalueck@rz.ruhr-uni-bochum.de>
  ENEGAARD Eric Negaard <lmdejn@lmd.ericsson.se>
  ERICA    Eric Arnold <Eric.Arnold@corp.sun.com>
  ERYQ     Eryq <eryq@zeegee.com>
  ESR      Eric S. Raymond <esr@snark.thyrsus.com>
  EVANPRO  Evangelo Prodromou <evangelo@endcontsw.com>
  EWALKER  Edward Walker <ewalker@platform.com>
  FDESAR   Francois Desarmenien <desar@club-internet.fr>
  FIMM     Dennis Taylor <corbeau@execpc.com>
  FIS      Frank Ian Smith <frank@ns.array.ca>
  FJH      Frederick Hirsch <fjh@alum.mit.edu>
  FLEITNER Felix von Leitner <leitner@math.fu-berlin.de>
  FLETCH   Mike Fletcher <fletch@phydeaux.org>
  FMC      Frederic Chauveau <fmc@pasteur.fr>
  FORS     The "Friends of Randal Schwartz" mailing list
           Mail to majordomo@teleport.com with body "subscribe
           fors-discuss <your-address>"
  FPIVARI  Fabrizio Pivari <Fabrizio.Pivari@agip.it>
  FRAMM    Frederik Ramm <ramm@rz.uni-karlsruhe.de>
  FRANCOC  Franco Callari <franco@cim.mcgill.ca>
  FSG      Felix Sebastian Gallo <fsg@ultranet.com>
  FTASSIN  Fabien Tassin <tassin@eerie.fr>
  GAAS     Gisle Aas <aas@sn.no>
  GABOR    Gábor Egressy <gabor@vmunix.com>
  GAND     Greg Anderson <greg@ftp.netgate.net>
  GARY     Gary Howland <gary@hotlava.com>
  GBACON   Greg Bacon <gbacon@cs.uah.edu>
  GBARR    Graham Barr <gbarr@pobox.com>
  GBAUER   Georg Bauer <gb@hugo.westfalen.de>
  GBOSS    Greg Bossert <bossert@ecto.org>
  GDAMORE  Garrett D'Amore <garrett@yavin.org>
  GEHIC    Gerard Hickey <hickey@ctron.com>
  GENJISCH Genji Schmeder <genji@jps.net>
  GFLOHR   Guido Flohr <gufl0000@stud.uni-sb.de>
  GGONTER  Gerhard Gonter <gonter@wu-wien.ac.at>
  GJB      Geoffrey Broadwell <habusan2@sprynet.com>
  GKNOPS   Gerd Knops <gerti@BITart.com>
  GLENNWOOD Glenn Wood <glenn@savesmart.com>
  GLOVER   Mike Glover <glover@credit.erin.utoronto.ca>
  GMLEWIS  Glenn M. Lewis <glenn@gmlewis.com>
  GNAT     Nathan Torkington <gnat@frii.com>
  GOSSAMER Gossamer <gossamer@tertius.net.au>
  GREGFAST Greg Fast <gdf@imsa.edu>
  GREGG    Gregg Helt <gregg@fruitfly.berkeley.edu>
  GRICHTER Gerald Richter <richter@ecos.de>
  GSAR     Gurusamy Sarathy <gsar@umich.edu>
  GSM      Joe Marzot <gmarzot@baynetworks.com>
  GSPAF    Gene Spafford <spaf@cs.purdue.edu>
  GSPIVEY  Gary Spivey <spivey@romulus.ncsc.mil>
  GTHYNI   Göran Thyni <goran@bildbasen.se>
  GUYDX    Guy Decoux <decoux@moulon.inra.fr>
  GWARD    Greg Ward <greg@bic.mni.mcgill.ca>
  HAKANARDO Hakan Ardo <hakan@debian.org>
  HAKESTLER Hans A. Kestler <hans.kestler@medizin.uni-ulm.de>
  HALPOM   Hal Pomeranz <pomeranz@netcom.com>
  HAYASHI  Hiroo HAYASHI <hiroo.hayashi@computer.org>
  HIGHTOWE Lester Hightower <hightowe@united-railway.com>
  HMBRAND  H. Merijn Brand <PROCURA_BV@CompuServe.com>
  HMUELLER Hanno Mueller <hmueller@mail.kabel.de>
  HPALM    Hartmut Palm <palm@gfz-potsdam.de>
  HTCHAPMAN H. Todd Chapman <htchapma@oakland.edu>
  HTOUG    Henrik Tougaard <ht@datani.dk>
  HVDS     Hugo van der Sanden <hv@crypt.compulink.co.uk>
  IANC     Ian Clatworthy <ianc@mincom.co>
  IANPX    Ian Phillipps <ian@dial.pipex.com>
  IFLAN    Ian Flanigan <flan@cs.wustl.edu>
  IGUTHRIE Ian Guthrie <IGuthrie@aol.com>
  IKETRIS  Ilya Ketris <ilya@gde.to>
  IKLUFT   Ian Kluft <ikluft@cisco.com>
  ILYAZ    Ilya Zakharevich <ilya@math.ohio-state.edu>
  INGOMACH Ingo Macherius <Ingo.Macherius@tu-clausthal.de>
  JACKS    Jack Shirazi <JackS@GemStone.com>
  JAKE     Jake Donham <jaked@well.com>
  JAMCC    Jamie McCarthy <jamie@voyager.net>
  JANL     Nicolai Langfeldt <janl@math.uio.no>
  JANPAZ   Jan Pazdziora <adelton@fi.muni.cz>
  JARW     John A.R. Williams <J.A.R.Williams@aston.ac.uk>
  JASONS   Jason E. Stewart <jasons@cs.unm.edu>
  JBAKER   Jeffrey Baker <jeff@godzilla.tamu.edu>
  JBODNAR  Jason Bodnar <jbodnar@tivoli.com>
  JCMURPHY Jeff Murphy <jcmurphy@smurfland.cit.buffalo.edu>
  JCOSTOM  Jason Costomiris <jcostom@sjis.com>
  JCRISTY  John Cristy <cristy@sympatico.org>
  JDALLMAN John Dallman <jgd@cix.compulink.co.uk>
  JDUNCAN  James Duncan <jduncan@hawk.igs.net>
  JENDA    Jan Krynicky <Jenda@McCann.cz>
  JFITZ    James FitzGibbon <james@ican.net>
  JFRIEDL  Jeffrey Friedl <jfriedl@omron.co.jp>
  JGARRISON Jim Garrison <jhg@acm.org>
  JGBISHOP Jeremy G. Bishop <jeremy@evolution.com>
  JGLICK   Jesse N. Glick <jglick@sig.bsh.com>
  JGROENVEL John D Groenveld <groenveld@acm.org>
  JHA      John Aughey <jha@aughey.com>
  JHI      Jarkko Hietaniemi <jhi@iki.fi>
  JHORWITZ Jeff Horwitz <jhorwitz@umich.edu>
  JHOWELL  Jon Howell <jonh@cs.dartmouth.edu>
  JHPB     Joseph H. Buehler <jhpb@sarto.gaithersburg.md.us>
  JJDG     Hans de Graaff <graaff@xs4all.nl>
  JKAST    Jason Kastner <jkastner@oboe.calpoly.edu>
  JKEGL    Jeffrey Kegler <jeffrey@best.com>
  JKODIS   John Kodis <kodis@jagunet.com>
  JLBEC    Joel Becker <jlbec@ocala.cs.miami.edu>
  JLEVAN   Jerry LeVan <levan@eagle.eku.edu>
  JLLEROY  Jean-Louis Leroy <jll@skynet.be>
  JMAHAN   J. Michael Mahan <mahanm@nextwork.rose-hulman.edu>
  JMM      John Macdonald <jmm@elegant.com>
  JMURPHY  Joel Murphy <jmurphy+pause@cnu.acsu.buffalo.edu>
  JNH      Joseph N. Hall <joseph@5sigma.com>
  JNOLAN   John Nolan <jnolan@n2k.com>
  JOCASA   Joe Casadonte <joc@netaxs.com>
  JOEHIL   Joe Hildebrand <joe.hildebrand@twcable.com >
  JOHNH    John Heidemann <johnh@isi.edu>
  JOHNL    Jonathan Leffler <j.leffler@acm.org>
  JONG     Jong Park <jong@mrc-lmb.cam.ac.uk>
  JONO     Jon Orwant <orwant@media.mit.edu>
  JOSERODR Jose A. Rodriguez <Jose.Rodriguez@ac.upc.es>
  JPC      Jan-Pieter Cornet <johnpc@xs4all.nl>
  JPRAVETZ Jim Pravetz <jpravetz@adobe.com>
  JPRIT    Joshua N. Pritikin <bitset@mindspring.com>
  JROGERS  Jay Rogers <jay@rgrs.com>
  JROWE    Jeff Rowe <j.p.rowe@larc.nasa.gov>
  JSIRACUSA John Siracusa <siracusa@mindspring.com>
  JSTOF    John Stoffel <john@wpi.edu>
  JSWARTZ  Jonathan Swartz <jswartz@cmp.com>
  JTOBEY   John Tobey <jtobey@user1.channel1.com>
  JTURNER  James Turner <james@csmonitor.com>
  JV       Johan Vromans <jvromans@squirrel.nl>
  JVENIER  John Venier <venier@odin.mdacc.tmc.edu>
  JWAT     John Watson <jwatson@cnj.digex.net>
  JWIED    Jochen Wiedmann <joe@ispsoft.de>
  JWIEGLEY John Wiegley <johnw@oneworld.new-era.com>
  JZAWODNY Jeremy D. Zawodny <jzawodn@wcnet.org>
  KDOWNEY  Kyle Downey <kdowney@xline.com>
  KENFOX   Ken Fox <fox@vulpes.com>
  KENHOLM  Kenneth Alexander Holm III <rets@meta3.com>
  KENSHAN  Chung-chieh Shan <ken@digitas.harvard.edu>
  KEVINA   Kevin Atkinson <kevina@clark.net>
  KGB      Karl Glazebrook <kgb@aaoepp.aao.gov.au>
  KJALB    Kenneth Albanowski <kjahds@kjahds.com>
  KJOHNSON Kevin Johnson <kjj@pobox.com>
  KMACLEOD Ken MacLeod <ken@bitsko.slc.ut.us>
  KONDO    Yoshiyuki KONDO <cond@lsi-j.co.jp>
  KRISHPL  Krishna Shamu Sethuraman <krishpl@shamu.engr.sgi.com>
  KSB      Simon Berg <karl@it.kth.se>
  KSTAR    Kurt D. Starsinic <kstar@chapin.edu>
  KTHOMAS  Kenny Thomas <adminkt@flint.umich.edu>
  KTORP    Kristian Torp <torp@cs.auc.dk>
  KWILLIAMS Ken Williams <ken@forum.swarthmore.edu>
  LDACHARY Loic Dachary <loic@ceic.com>
  LDS      Lincoln D. Stein <lstein@genome.wi.mit.edu>
  LEIFHED  Leif Hedstrom <leif@netscape.com>
  LEITE    Pedro Leite <leite@ua.pt>
  LFINI    Luca Fini <lfini@arcetri.astro.it>
  LMJM     Lee McLoughlin <lmjm@icparc.ic.ac.uk>
  LMOLNAR  Laszlo Molnar <molnarl@cdata.tvnet.hu>
  LSTAF    Lennart Staflin <lenst@lysator.liu.se>
  LUISMUNOZ Luis Munoz <lem@cantv.net>
  LUKKA    Tuomas J. Lukka <Tuomas.Lukka@Helsinki.FI>
  LUSOL    Stephen O. Lidie <sol0@Lehigh.EDU>
  LUTHERH  Luther Huffman <lutherh@stratcom.com>
  LWALL    Larry Wall. Author of Perl. Busy man. <larry@wall.org>
  LWWWP    The libwww-perl mailing list
           Mail to libwww-perl-REQUEST@ics.uci.edu with body
           "subscribe"
  MAHEX    Mark "Hex" Hershberger <mah@eecs.tulane.edu>
  MAK      Martijn Koster <mak@surfski.webcrawler.com>
  MARCLANG Marc Langheinrich <marclang@cs.washington.edu>
  MARCP    Marc Paquette <Marc.Paquette@crim.ca>
  MARKB    Mark Biggar <mab@wdl.loral.com>
  MARKC    Mark Constable <markc@goldcoast.org>
  MARKIM   Mark A. Imbriaco <mark@ITRIBE.NET>
  MARKM    Mark Mielke <markm@nortel.ca>
  MARKPRIOR Mark Prior <mrp@connect.com.au>
  MARTINB  Martin Bartlett <martin@nitram.demon.co.uk>
  MATKIN   Matz Kindahl <matkin@docs.uu.se>
  MATTW    Matthew M. Wright <mattw@worldwidemart.com>
  MAURICE  Maurice Aubrey <maurice@hevanet.com>
  MCPL     The MacPerl mailing list
           Mail to mac-perl-REQUEST@iis.ee.ethz.ch with body
           "subscribe". There is an announcement-only low-volume
           mailing list too with the subscription address
           mac-perl-announce-request@iis.ee.ethz.ch.
  MDARWIN  Matthew Darwin <matthew@davin.ottawa.on.ca>
  MENGEL   Marc W. Mengel <mengel@fnal.gov>
  MERGL    Edmund Mergl <E.Mergl@bawue.de>
  MERLYN   Randal L. Schwartz <merlyn@stonehenge.com>
  MEWP     Michael Peppler <mpeppler@mbay.net>
  MFUHR    Michael Fuhr <mfuhr@dimensional.com>
  MGH      Marc Hedlund <hedlund@best.com>
  MGRABNAR Matija Grabnar <matija.grabnar@arnes.si>
  MHM      Mike Moran <db2perl@austin.ibm.com>
  MICB     Malcolm Beattie <mbeattie@sable.ox.ac.uk>
  MICHAELD Michael D. Dowling <michaeld@cnet.com>
  MIKEDLR  Michael De La Rue <miked@ed.ac.uk>
  MIKEH    Mike Heins <mikeh@iac.net>
  MIKEKING Michael King <mike808@mo.net>
  MIKESTOK Mike Stok <mike@stok.co.uk>
  MIVKOVIC Milivoj Ivkovic <mi@alma.ch>
  MJAEG    Michal Jaegermann <michal@ellpspace.math.ualberta.ca>
  MJD      Mark-Jason Dominus <mjd-perl-pause@plover.com>
  MJS      Michael Smith <mjs@iii.co.uk>
  MKOSSATZ Max Kossatz <kossatz@thing.at>
  MKRUSE   Matt Kruse <mkruse@netexpress.net>
  MLEHMANN Marc Lehmann <pcg@goof.com>
  MMML     The MakeMaker mailing list
           Mail to makemaker-REQUEST@franz.ww.tu-berlin.de with body
           "subscribe"
  MORTY    Mordechai Abzug <mabzug1@gl.umbc.edu>
  MPECK    Martyn Peck <mwp@mwpnet.com>
  MPIOTR   Michael Piotrowski <mxp@linguistik.uni-erlangen.de>
  MRG      Matthew Green <mrg@mame.mu.oz.au>
  MRJC     Martin RJ Cleaver <Martin.Cleaver@BCS.org.uk>
  MRKAE    Mark R. Kaehny <kaehny@execpc.com>
  MSCHILLI Michael Schilli <mschilli1@aol.com>
  MSCHWARTZ Martin Schwartz <schwartz@cs.tu-berlin.de>
  MSCHWERN Michael G Schwern <schwern@rt1.net>
  MSHLD    Michael Shields <shields@crosslink.net>
  MSHOYHER Mike Shoyher <msh@apache.lexa.ru>
  MSOLOMON Mark Solomon <msolomon@seva.net>
  MSULLIVAN Michael P. Sullivan <mps@discomsys.com>
  MTHURN   Martin Thurn <MartinThurn@iname.com>
  MUIR     David Muir Sharnoff <muir@idiom.com>
  MVERB    Martien Verbruggen <mgjv@comdyn.com.au>
  NEERI    Matthias Ulrich Neeracher <neeri@iis.ee.ethz.ch>
  NEILB    Neil Bowers <neilb@cre.canon.co.uk>
  NEMWS    Nem W Schlecht <nem@abattoir.cc.ndsu.nodak.edu>
  NI-S     Nick Ing-Simmons <nick@ni-s.u-net.com>
  NICO     Nick Gianniotis <nico@acm.org>
  NIGELM   Nigel Metheringham <nigel@pobox.com>
  NIKIP    Nikolay Pelov <nikip@iname.com>
  NJENSEN  Neil Jensen <njensen@habaneros.com>
  NJLEON   Nicholas J. Leon <nicholas@binary9.net>
  NMONNET  Nicolas Monnet <nico@idnet.fr>
  NNEUL    Nathan Neulinger <nneul@umr.edu>
  NREICHEN Nils Reichen <reichen@eicn.ch>
  NTHIERY  Nicolas Thiéry <Nicolas.Thiery@ens.fr>
  NVPAT    Nathan V. Patwardhan <nvp@ora.com>
  NWALSH   Norman Walsh <norm@berkshire.net>
  NWCLARK  Nicholas.Clark <Nicholas.Clark@liverpool.ac.uk>
  NWINT    Neil Winton <winton_neil@jpmorgan.com>
  OCROW    Owen Crow <ocrow@crl.com>
  OEVANS   O'Shaughnessy Evans <oevans@acm.org>
  OKAMOTO  Jeff Okamoto <okamoto@corp.hp.com>
  OMKELLOGG Oliver M. Kellogg <Oliver.Kellogg@vs.dasa.de>
  ORENBK   Oren Ben-Kiki <oren@capella.co.il>
  OTAYLOR  Owen Taylor <owt1@cornell.edu>
  OTISG    Otis Gospodnetic <Otis.Gospodnetic@middlebury.edu>
  OZAWA    OZAWA Sakuro <crouton@po.shiojiri.ne.jp>
  P5P      The Perl5 Porters Mailing List
           Mail to perl5-porters-REQUEST@perl.org with body
           "subscribe"
  PACKRATS The Packrats Mailing List
           Mail to majordomo@cise.ufl.edu with body "subscribe
           perl-packrats <your address>"
  PARKER   Michael Parker <parker@austx.tandem.com>
  PATM     Pat Martin <pat@bronco.advance.com>
  PAULG    Paul Gampe <paulg@twics.com>
  PEARCEC  Christian Pearce <pearcec@dml0.wcupa.edu>
  PEASE    Mark Pease <peasem@primenet.com>
  PEM      Peter Murray <pem@po.cwru.edu>
  PERLDL   The Perl Data Language Mailing List
           Mail subscription requests to
           perldl-request@jach.hawaii.edu with body "subscribe"
  PETERGAL Peter Gallasch <gal@adv.magwien.gv.at>
  PGPML    The PGP Module Mailing List
           Mail to majordomo@dbc-mifco.com with body "subscribe
           perl-pgp <your-address>"
  PGUEN    Philip Guenther <guenther@gac.edu>
  PHENSON  Paul B. Henson <henson@acm.org>
  PHILIPA  Philip Aston <philipa@parallax.co.uk>
  PHILIPM  Philip Mikal <ventolin@earthlink.net>
  PHOENIX  Tom Phoenix <rootbeer@teleport.com>
  PHOENIXL Scott <Phoenixl@aol.com>
  PKUTS    Peter Kutschera <peter@zditr1.arcs.ac.at>
  PLDAP    Perl LDAP mailing list
           Mail subscription requests to
           perl-ldap-REQUEST@mail.med.cornell.edu with body
           "subscribe"
  PLISTER  Peter Lister <p.lister@cranfield.ac.uk>
  PMH      Peter Haworth <pmh@edison.ioppublishing.com>
  PMKANE   Patrick Michael Kane <modus-cpan@pr.es.to>
  PMQS     Paul Marquess <pmarquess@bfsec.bt.co.uk>
  PRATP    Pratap Pereira <pereira@ee.eng.ohio-state.edu>
  PROWELL  Peter Rowell <peter@thirdeye.com>
  PRYAN    Patrick Ryan <pgryan@geocities.com>
  PSEIBEL  Peter Seibel <seibel@organic.com>
  PSHARPE  Paul Sharpe <paul@miraclefish.com>
  PTILL    Peter Tillemans <pti@pandora.be>
  PVANDRY  Phillip Vandry <vandry@mlink.net>
  PVERD    Philippe Verdret <philippe.verdret@eurolang.fr>
  PVHP     Peter Prymmer <pvhp@lns62.lns.cornell.edu>
  PWO      Peter W. Osel <pwo@perl.org>
  QUONG    Russell W Quong <quong@best.com>
  RAM      Raphael Manfredi <Raphael_Manfredi@grenoble.hp.com>
  RAP      Ryan Alyn Porter <rap@endymion.com>
  RAVN     Thorbjoern Ravn Andersen <ravn@mip.ou.dk>
  RBERJON  Robin Berjon <robin@idl-net.com>
  RBOW     Richard Bowen <rbowen@rcbowen.com>
  RCAPUTO  Rocco Caputo <troc@shadow.net>
  RDO      Robert Olson <olson@mcs.anl.gov>
  REDEN    Robert Eden <reden@strategiconline.com>
  RFOLEY   Richard Foley <a1503c@email.mot.com>
  RHNELSON Rolf Harold Nelson <rolf@usa.healthnet.org>
  RHOFER   Robert Hofer <hofer@informatik.uni-muenchen.de>
  RIK      Rik Harris <rik.harris@fulcrum.com.au>
  RJRAY    Randy J Ray <rjray@tsoft.com>
  RJS      Robert J Seymour <rseymour@rseymour.com>
  RKOBES   Randy Kobes <randy@theory.uwinnipeg.ca>
  RMOSE    Russell Mosemann <mose@ns.ccsn.edu>
  RNAIMA   Reza Naima <reza@reza.net>
  ROSCH    Roderick Schertler <roderick@argon.org>
  RRA      Russ Allbery <rra@stanford.edu>
  RSAVAGE  Ron Savage <rpsavage@ozemail.com.au>
  RSE      Ralf S. Engelschall <rse@engelschall.com>
  RSI      Rajappa Iyer <rsi@earthling.net>
  RURBAN   Reini Urban <rurban@sbox.tu-graz.ac.at>
  RVA      Rodger V. Anderson <rodger@boi.hp.com>
  RWALKER  Roland Walker <walker@ncbi.nlm.nih.gov>
  SAM      Simon Matthews <sam@peritas.com>
  SAMPO    Sampo Kellomaki <sampo@neuronio.pt>
  SBALA    S Balamurugan <sbm@india.ti.com>
  SBECK    Sullivan Beck <sbeck@cise.ufl.edu>
  SBURKE   Sean M. Burke <sburke@netadventure.net>
  SCOOPER  Simon Cooper <sc@sgi.com>
  SCOTTVR  Scott VanRavenswaay <scottvr@netcomi.com>
  SDOWD    Sean Dowd <ssd@ticnet.com>
  SEB      Steven Brenner <S.E.Brenner@bioc.cam.ac.uk>
  SEMM     Steve Emmerson <support@unidata.ucar.edu>
  SFARRELL Stephen Farrell <steve@farrell.org>
  SFINK    Steve A Fink <sfink@cs.berkeley.edu>
  SGEL     Sergio Gelato <gelato@oort.ap.sissa.it>
  SGMIANO  Stephen G. Miano <stevem@mindspring.com>
  SHARI    Davide Migliavacca <davide.migliavacca@inferentia.it>
  SHAWNPW  Shawn P. Wallace <shawn@as220.org>
  SHERWOOD Steve Sherwood <pariah@netcomuk.co.uk>
  SHGUN    Shishir Gundavaram <shishir@ruby.ora.com>
  SHIGIO   Shigio Yamaguchi <shigio@wafu.netgate.net>
  SHIKONO  Shinji KONO <kono@ie.u-ryukyu.ac.jp>
  SHUTTON  Scott Hutton <shutton@pobox.com>
  SKANE    Steve Kane <skane@cse.psu.edu>
  SKIMO    Sven Verdoolaege <skimo@kotnet.org>
  SKINGTON Sam Kington <sam@illuminated.co.uk>
  SKUNZ    Steven L. Kunz <skunz@iastate.edu>
  SMCCAM   Stephen McCamant <alias@mcs.com>
  SMORTON  Sanford Morton <smorton@pobox.com>
  SMPILL   Steve Pillinger <S.M.Pillinger@cs.bham.ac.uk>
  SNEEX    Bill Jones <sneex@fccj.org>
  SOVA     Vladimir Sovetov <sova@kpbank.ru>
  SPIDB    Spider Boardman <spider@orb.nashua.nh.us>
  SPP      Stephen P Potter <spp@colltech.com>
  SPURKIS  Steve Purkis <spurkis@engsoc.carleton.ca>
  SREZIC   Slaven Rezic <eserte@cs.tu-berlin.de>
  SRIEHM   Stephen Riehm <Stephen.Riehm@pc-plus.de>
  SRIRAM   Sriram Srinivasan <sriram@weblogic.com>
  SRZ      Stephen Zander <gibreel@pobox.com>
  STANM    Stan Melax <melax@bioware.com>
  STBEY    Steffen Beyer <sb@engelschall.com>
  STEVENSL Steven Slegel <stevensl@ccpl.carr.lib.md.us>
  STLACY   Stacy Lacy <stacy-lacy@worldnet.att.net>
  SVENH    Sven Heinicke <sven@zen.org>
  SWMCD    Steven McDougall <swmcd@world.std.com>
  SZECK    Steve Zeck <saintly@innocent.com>
  TBOUTELL Thomas Boutell <boutell@boutell.com>
  TBRADFUTE Todd Bradfute <bradfute@pflugerville.org>
  TEKE     Torsten Ekedahl <teke@matematik.su.se>
  TERDOEST Hugo WL ter Doest <terdoest@cs.utwente.nl>
  TIBBS    Jason Tibbitts <tibbs@hpc.uh.edu>
  TIMB     Tim Bunce <Tim.Bunce@ig.co.uk>
  TIMPOTTER Tim Potter <tpot@acsys.anu.edu.au>
  TIMPX    Tim Goodwin <tim@uunet.pipex.com>
  TKML     The Tk Perl Mailing list
           Mail to majordomo@lists.stanford.edu with body "subscribe
           ptk <your-address>"
  TLP      Travis L Priest <T.L.Priest@LaRC.NASA.GOV>
  TOMC     Tom Christiansen <tchrist@mox.perl.com>
  TOMFA    Tom Fawcett <fawcett@nynexst.com>
  TOMH     Tom Horsley <tom@ssd.csd.harris.com>
  TOMHUGHES Tom Hughes <tom@compton.demon.co.uk>
  TOMZO    Tom Zoerner <Tom.Zoerner@informatik.uni-erlangen.de>
  TRIAS    Fernando Trias <fernando@pedestalsoftware.com>
  TRIEMER  Thomas Riemer <triemer@apt4g.a3nyc.com>
  TROCKIJ  Jim Trocki <trockij@transmeta.com>
  TSANDERS Tony Sanders <sanders@bsdi.com>
  TSPIN    Tom Spindler <dogcow@umich.edu>
  TWENRICH Thomas Wenrich <wenrich@ping.at>
  TYEMQ    Tye McQueen <tye@metronet.com>
  ULPFR    Ulrich Pfeifer <pfeifer@wait.de>
  UWEH     Uwe Hollerbach <uweh@bu.edu>
  VKHERA   Vivek Khera <vivek@khera.org>
  VMSML    The VMSPerl Mailing list
           Mail subscription requests to maintainer at
           <bailey@genetics.upenn.edu>
  WATANABE Hirofumi Watanabe <watanabe@ase.ptg.sony.co.jp>
  WAYNEDAV Wayne Davison <wayne@clari.net>
  WIN32    The Perl for Win32 Mailing list
           Mail to majordomo@mail.hip.com with body "subscribe
           Perl-Win32 <your-address>"
  WINKO    Winfried Koenig <win@in.rhein-main.de>
  WPMOORE  W. Phillip Moore <wpm@ms.com>
  WPS      William Setzer <William_Setzer@ncsu.edu>
  WRW      William R Ward <wrw@bayview.com>
  WSCOT    Wayne Scott <wscott@ichips.intel.com>
  WTOMPSON Wayne Tompson <Wayne.Thompson@Ebay.Sun.COM>
  WYTAN    Wei-Yuen Tan <Wei-Yuen_Tan@hip.com>
  YASU     Yasushi Saito <yasushi@cs.washington.edu>
  YENYA    Jan "Yenya" Kasprzak <kas@informatics.muni.cz>
  YLU      Luke Y. Lu <ylu@mail.utexas.edu>
  YVESP    Yves Paindaveine <yp@gr.osf.org>
  ZENIN    Byron Brummer <zenin@bawdycaste.org>

User Contributions:

Comment about this article, ask questions, or add new information about this topic:

CAPTCHA


[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:
andreas.koenig@franz.ww.tu-berlin.de (Andreas Koenig)





Last Update March 27 2014 @ 02:12 PM