Path: usenet.cise.ufl.edu!huron.eel.ufl.edu!usenet.eel.ufl.edu!uky.edu!news.cuny.edu!nntp.upenn.edu!newsserver.jvnc.net!news.pn.com!nntp.pn.com!diablo.gte.net!newsfeed.sovam.com!sovam!cam-news-hub1.bbnplanet.com!news.bbnplanet.com!news-feed1.tiac.net!newsfeed.internetmci.com!194.162.162.196!newsfeed.nacamar.de!fu-berlin.de!zrz.TU-Berlin.DE!franz.ww.TU-Berlin.DE!koenig
From: andreas.koenig@franz.ww.tu-berlin.de (Andreas Koenig)
Newsgroups: comp.lang.perl.announce
Subject: New Module List Posted
Followup-To: comp.lang.perl.modules
Date: 19 Feb 1998 18:59:15 GMT
Organization: Technical University Berlin, Germany
Lines: 356
Approved: koenig@franz.ww.tu-berlin.de
Distribution: world
Expires: 03/12/98 19:59:08
Message-ID: <6chve3$15n$1@mamenchi.zrz.TU-Berlin.DE>
References: <perl-faq/module-list-1-887873492@ww.tu-berlin.de>
Reply-To: andreas.koenig@franz.ww.tu-berlin.de (Andreas Koenig)
NNTP-Posting-Host: franz.ww.tu-berlin.de
Keywords: FAQ, Perl, Module, Software, Reuse, Development, Free
Originator: koenig@franz.ww.TU-Berlin.DE
Xref: usenet.cise.ufl.edu comp.lang.perl.announce:80


The Perl 5 Module List, v2.47
=============================

Today I posted a new module list to the newsgroups
comp.lang.perl.modules, comp.answers, and news.answers. The HTML
version of the list has been uploaded to CPAN as well:

    http://www.perl.com/CPAN/modules/00modlist.long.html

As usual, comments, corrections and suggestions are appreciated.
Please mail them to modules@perl.org. I believe that I have taken into
account all mails we have received since the last posting. If this is
not the case, please let us know.

Besides the changes listed below, the text part of the module list has
got a few new paragraphs from Jon Orwant. Because we're getting
flooded by module registrations with irresponsible naming suggestions,
I'd like to post the complete chapter 2.5 of the module list here.
Please take it to heart if you are considering a contribution to CPAN.
Thank you.

   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.


Recent Changes in the modules database (! for changes, "+" for new entries)
---------------------------------------------------------------------------

2) Perl Core Modules, Perl Language Extensions and Documentation Tools
----------------------------------------------------------------------
Pod::
::Diff         cdpf  compare two POD files and report diff        IANC +
::Sdf          cdpf  converter to SDF                             IANC +


4) Operating System Interfaces
------------------------------
Device::
::SVGA         c     SVGA Graphic card driver                     SCOTTVR +

MSDOS::
::Descript     bdpO  Manage 4DOS style DESCRIPT.ION files         CJM +

VMS::
::Lock         cnco  Object interface to $ENQ (VMS lock mgr)      BHUGHES +


5) Networking, Device Control (modems) and InterProcess Communication
---------------------------------------------------------------------
DCE::
::ACL          bdcO  Interface to Access Control List protocol    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 !

Net::
::Interface    a     ifconfig(1) implementation                   SRZ +

RPC::
::Simple       adpO  Simple OO async remote procedure calls       DDUMONT +
::pClient      RdpO  Interface for building pServer Clients       JWIED +
::pServer      RdpO  Interface for building Perl Servers          JWIED +

Socket         Smcf  Defines socket-related constants             GNAT !


6) Data Types and Data Type Utilities (see also Database Interfaces)
--------------------------------------------------------------------
Array::
::Heap         cdpf  manipulate array elements as a heap          JMM +

Calendar::
::RCM          i     Russell Calendar Manager                     HTCHAPMAN +

Class::
::Singleton    bdp  Implementation of a "Singleton" class        ABW +
::TOM          RmpO  Transportable Object Model for perl          JDUNCAN +

Data::
::Check        cdpO  Checks values for various data formats       KENHOLM +

Heap::
::Base         cdpO  defines heap (and element) object interfaces JMM +
::Binary       cdpO  implement binary Heap:: interface            JMM +
::Binomial     cdpO  implement binomial Heap:: interface          JMM +

Heap::Elem::
::*            cdpO  implement containers items to be heap'ed     JMM +
::Fibonacci    cdpO  implement Fibonacci Heap:: interface         JMM +

List::
::Utils        cdcf  Extra list/array manipulation functions      JNH +

Sort::
::Fields       bdpf  sort text lines by alpha or numeric fields   JNH +

Tie::
::CPHash       bdpO  Case preserving but case insensitive hash    CJM +
::DBI          adpO  Tie hash to a DBI handle                     LDS +

Tree::
::Fat          adcO  Embeddable F-Tree Algorithm Suite            JPRIT +


7) Database Interfaces (see also Data Types)
--------------------------------------------
DBD::
::Sybase       amcO  Sybase Driver for DBI                        MEWP !

Db::
::Ctree        adcr  Faircom's CTREE+ database interface          REDEN +
::Documentum   bdcf  Documentum EDMS Perl client interface        BRIANSP +

MLDBM          RdpO  Transparently store multi-level data in DBM  GSAR !
Msql           RmcO  Mini-SQL database interface                  JWIED !
Mysql          RmcO  mysql database interface                     JWIED +
ObjStore       Rm+O  ObjectStore OODBMS Interface                 JPRIT !

Sybase::
::BCP          RdcO  Sybase BCP interface                         MEWP +
::CTlib        RdcO  Sybase CTlibrary interface                   MEWP !


8) User Interfaces (Character and Graphical)
--------------------------------------------
Event          adpO  Perl event loop                              GBARR +

GUI::
::Guido        i     bd+O Communicate with objects in a GUI       TBRADFUTE +

Gimp           bdcO  Interface to write plug-ins for The Gimp     MLEHMANN +

X11::
::Motif        bdcO  Motif widget set interface                   KENFOX !


10) File Names, File Systems and File Locking (see also File Handles)
---------------------------------------------------------------------
File::
::Compare      Supf  Compare file contents quickly                P5P +


11) Text Processing, Parsing and Searching
------------------------------------------
FrameMaker::
::Control      cdpO  Control a FrameMaker session                 PEASE +
::FDK          idcO  Interface to Adobe FDK                       PEASE +
::MIF          cdpO  Parse and Manipulate FrameMaker MIF files    PEASE +

Lingua::
::PT           bupf  Namespace for Portugese language modules     EGROSS +

String::
::CRC          Rdcf  Cyclic redundency check generation           MUIR +

Text::
::Balanced     Rdpf  Extract balanced-delimiter substrings        DCONWAY +
::Format       RdpO  Advanced paragraph formatting                GABOR +
::MetaText     bdp  Text processing/markup meta-language         ABW +


13) Internationalization and Locale
-----------------------------------
Locale::
::Langinfo     cdcf  The <langinfo.h> API                         JHI +


14) Authentication, Security and Encryption (see also Networking)
-----------------------------------------------------------------
Authen::
::TacacsPlus   adcO  Authentication on tacacs+ server             MSHOYHER +

PGP::
::Sign         bdpr  Create and check PGP signatures, securely    RRA !

SSLeay::
::*            cdcO  Interface to SSLeay                          EAYNG +


15) World Wide Web, HTML, HTTP, CGI, MIME etc (see Text Processing)
-------------------------------------------------------------------
CGI::
::Screen       adpO  Create multi screen CGI-scripts              ULPFR +

HTML::
::Table        bnpO  Write HTML tables via spreadsheet metaphor   STLACY +

HTTP::Request::
::Form         RdpO  Generates HTTP::Request objects out of forms GBAUER +


18) Images, Pixmap and Bitmap Manipulation, Drawing and Graphing
----------------------------------------------------------------
VRML::
::Base         RdpO  common basic methods                         HPALM +
::Color        Rdpf  color functions and X11 color names          HPALM +
::VRML1        RdpO  VRML methods with the VRML 1.0 standard      HPALM !
::VRML2        RdpO  VRML methods with the VRML 2.0 standard      HPALM !


19) Mail and Usenet News
------------------------
News::
::Gateway      ampO  Mail/news gatewaying, moderation support     RRA !


20) Control Flow Utilities (callbacks and exceptions etc)
---------------------------------------------------------
Memoize        adpr  Cache results of individual function calls   MJD +


22) Microsoft Windows Modules
-----------------------------
Win32::
::ChangeNotify bdcO  Monitor changes to files and directories     CJM +
::Event        bdcO  Use Win32 event objects for IPC              CJM +
::IPC          bdcO  Base class for Win32 synchronization objects CJM +
::Mutex        bdcO  Use Win32 mutex objects for IPC              CJM +
::Semaphore    bdcO  Use Win32 semaphore objects for IPC          CJM +


23) Miscellaneous Modules
-------------------------
Agent          cdpO  Transportable Agent module                   SPURKIS !

Business::
::CreditCard   Rdpf  Credit card number check digit test          JONO +
::ISBN         RdpO  Work with ISBN as objects                    BDFOY +

FAQ::
::OMatic       RdpO  A CGI-based FAQ/help database maintainer     JHOWELL +


Recent Changes in the users database (only changes and additions)
-----------------------------------------------------------------

 AMW       Andrew Wilcox <andrew_wilcox@gwi.net>
 ANTRO     Antonio Rosella <anface@yahoo.com>
 ASHER     Aaron Sherman <ajs@ajs.com>
 BARTLEY   Eric Bartley <bartley@purdue.edu>
 BHUGHES   Brad Hughes <brad@tgsmc.com>
 BMEEKINGS Brian Meekings <meekings@idi-middleware.com>
 BPOWERS   Brent B. Powers <powers@dti.net>
 BRIANSP   Brian W. Spolarich <briansp@ans.net>
 CBAIL     Charles Bailey <bailey@genetics.upenn.edu>
 CHTTRAX   Christoph T. Traxler <Christoph.T.Traxler@theo.physik.uni-giessen.de>
 EWALKER   Edward Walker <ewalker@platform.com>
 FJH       Frederick Hirsch <fjh@alum.mit.edu>
 GABOR     Gábor Egressy <gabor@vmunix.com>
 GARY      Gary Howland <gary@hotlava.com>
 GBACON    Greg Bacon <gbacon@cs.uah.edu>
 GBAUER    Georg Bauer <Georg_Bauer@muensterland.org>
 GKNOPS    Gerd Knops <gerti@BITart.com>
 GNAT      Nathan Torkington <gnat@frii.com>
 GSPIVEY   Gary Spivey <spivey@romulus.ncsc.mil>
 GTHYNI    Göran Thyni <goran@bildbasen.se>
 HAYASHI   Hiroo HAYASHI <hayashi@pdcd.ilab.toshiba.co.jp>
 HTCHAPMAN H. Todd Chapman <htchapma@oakland.edu>
 JBAKER    Jeffrey Baker <jeff@godzilla.tamu.edu>
 JMM       John Macdonald <jmm@elegant.com>
 JOHNL     Jonathan Leffler <j.leffler@acm.org>
 KENHOLM   Kenneth Alexander Holm III <rets@meta3.com>
 KGB       Karl Glazebrook <kgb@aaoepp.aao.gov.au>
 MARKC     Mark Constable <markc@goldcoast.org>
 MEWP      Michael Peppler <mpeppler@mbay.net>
 MJD       Mark-Jason Dominus <mjd@pobox.com>
 MLEHMANN  Marc Lehmann <pcg@goof.com>
 MSCHILLI  Michael Schilli <mschilli1@aol.com>
 MSHOYHER  Mike Shoyher <msh@apache.lexa.ru>
 NJLEON    Nicholas J. Leon <nicholas@binary9.net>
 ORENBK    Oren Ben-Kiki <oren@capella.co.il>
 OZAWA     OZAWA Sakuro <crouton@po.shiojiri.ne.jp>
 PARKER    Michael Parker <parker@austx.tandem.com>
 PSHARPE   Paul Sharpe <paul@miraclefish.com>
 PWO       Peter W. Osel <pwo@perl.org>
 RAVN      Thorbjoern Ravn Andersen <ravn@mip.ou.dk>
 REDEN     Robert Eden <reden@strategiconline.com>
 RHNELSON  Rolf Harold Nelson <rolf@usa.healthnet.org>
 RJRAY     Randy J Ray <rjray@tsoft.com>
 RRA       Russ Allbery <rra@stanford.edu>
 RVA       Rodger V. Anderson <rodger@boi.hp.com>
 SCOTTVR   Scott VanRavenswaay <scottvr@netcomi.com>
 SFINK     Steve A Fink <sfink@cs.berkeley.edu>
 SHARI     Davide Migliavacca <davide.migliavacca@inferentia.it>
 SPP       Stephen P Potter <spp@colltech.com>
 SPURKIS   Steve Purkis <spurkis@engsoc.carleton.ca>
 STLACY    Stacy Lacy <stacy-lacy@worldnet.att.net>
 TBRADFUTE Todd Bradfute <bradfute@pflugerville.org>

--
andreas koenig
