Rewrite the tests section of Makefile to be less redundant
[p5sagit/p5-mst-13.2.git] / pod / perlmodlib.pod
index 1c58080..62d249a 100644 (file)
@@ -98,10 +98,6 @@ Compute arithmetic in integer instead of double
 
 Request less of something from the compiler
 
-=item lib
-
-Manipulate @INC at compile time
-
 =item locale
 
 Use and avoid POSIX locales for built-in operations
@@ -118,6 +114,10 @@ Restrict unsafe operations when compiling
 
 Package for overloading perl operations
 
+=item perlio
+
+Configure C level IO
+
 =item re
 
 Alter regular expression behaviour
@@ -146,6 +146,10 @@ Predeclare global variable names (obsolete)
 
 Control optional warnings
 
+=item warnings::register
+
+Warnings import function
+
 =back
 
 =head2 Standard Modules
@@ -220,6 +224,10 @@ Show lexical variables used in functions or files
 
 Helper module for CC backend
 
+=item B::Stash
+
+Show what stashes are loaded
+
 =item B::Terse
 
 Walk Perl syntax tree, printing terse info about ops
@@ -284,10 +292,6 @@ Wrapper around CPAN.pm without using any XS module
 
 Warn of errors (from perspective of caller)
 
-=item Carp::Heavy
-
-Carp guts
-
 =item Class::Struct
 
 Declare struct-like datatypes as Perl classes
@@ -316,6 +320,10 @@ Supply object methods for directory handles
 
 Provides screen dump of Perl data.
 
+=item Encode
+
+Character encodings
+
 =item English
 
 Use nice English (or awk) names for ugly punctuation variables
@@ -436,6 +444,10 @@ Create or remove directory trees
 
 Portably perform operations on file names
 
+=item File::Spec::Epoc
+
+Methods for Epoc file specs
+
 =item File::Spec::Functions
 
 Portably perform operations on file names
@@ -476,6 +488,10 @@ Keep more files open than the system permits
 
 Supply object methods for filehandles
 
+=item Filter::Simple
+
+Simplified source filtering
+
 =item FindBin
 
 Locate directory of original perl script
@@ -572,6 +588,10 @@ Module to convert pod files to HTML
 
 Objects representing POD input paragraphs, commands, etc.
 
+=item Pod::LaTeX
+
+Convert Pod data to formatted Latex
+
 =item Pod::Man
 
 Convert POD data to formatted *roff input
@@ -636,6 +656,10 @@ Run shell commands transparently within perl
 
 Load the C socket.h defines and structure manipulators 
 
+=item Storable
+
+Persistency for perl data structures
+
 =item Symbol
 
 Manipulate Perl symbols and their names
@@ -736,7 +760,7 @@ By-name interface to Perl's built-in getpw*() functions
 
 To find out I<all> modules installed on your system, including
 those without documentation or outside the standard release,
-jus tdo this:
+just do this:
 
     % find `perl -e 'print "@INC"'` -name '*.pm' -print
 
@@ -775,69 +799,90 @@ Most importantly, CPAN includes around a thousand unbundled modules,
 some of which require a C compiler to build.  Major categories of
 modules are:
 
-=over
+=over 4
 
 =item *
+
 Language Extensions and Documentation Tools
 
 =item *
+
 Development Support
 
 =item *
+
 Operating System Interfaces
 
 =item *
+
 Networking, Device Control (modems) and InterProcess Communication
 
 =item *
+
 Data Types and Data Type Utilities
 
 =item *
+
 Database Interfaces
 
 =item *
+
 User Interfaces
 
 =item *
+
 Interfaces to / Emulations of Other Programming Languages
 
 =item *
+
 File Names, File Systems and File Locking (see also File Handles)
 
 =item *
+
 String Processing, Language Text Processing, Parsing, and Searching
 
 =item *
+
 Option, Argument, Parameter, and Configuration File Processing
 
 =item *
+
 Internationalization and Locale
 
 =item *
+
 Authentication, Security, and Encryption
 
 =item *
+
 World Wide Web, HTML, HTTP, CGI, MIME
 
 =item *
+
 Server and Daemon Utilities
 
 =item *
+
 Archiving and Compression
 
 =item *
+
 Images, Pixmap and Bitmap Manipulation, Drawing, and Graphing
 
 =item *
+
 Mail and Usenet News
 
 =item *
+
 Control Flow Utilities (callbacks and exceptions etc)
 
 =item *
+
 File Handle and Input/Output Stream Utilities
 
 =item *
+
 Miscellaneous Modules
 
 =back
@@ -845,7 +890,7 @@ Miscellaneous Modules
 Registered CPAN sites as of this writing include the following.
 You should try to choose one close to you:
 
-=over
+=over 4
 
 =item Africa
 
@@ -1201,6 +1246,12 @@ 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 MS-DOS then try to ensure each is
 unique in the first 8 characters. Nested modules make this easier.
@@ -1400,18 +1451,28 @@ Don't delete the original .pl file till the new .pm one works!
 
 =over 4
 
-=item Complete applications rarely belong in the Perl Module Library.
+=item *
+
+Complete applications rarely belong in the Perl Module Library.
+
+=item *
 
-=item Many applications contain some Perl code that could be reused.
+Many applications contain some Perl code that could be reused.
 
 Help save the world! Share your code in a form that makes it easy
 to reuse.
 
-=item Break-out the reusable code into one or more separate module files.
+=item *
+
+Break-out the reusable code into one or more separate module files.
+
+=item *
+
+Take the opportunity to reconsider and redesign the interfaces.
 
-=item Take the opportunity to reconsider and redesign the interfaces.
+=item *
 
-=item In some cases the 'application' can then be reduced to a small
+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: