X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperlmodlib.pod;h=62d249a150022e49ae4f53d39cdced5322b572a3;hb=d57eded6852763e3753285b692dd66ed278e268d;hp=c5afea214e4ffae08f85fad910fdb9c870925ba7;hpb=13a2d996abe42696bc5ca08abf08030d440c6148;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perlmodlib.pod b/pod/perlmodlib.pod index c5afea2..62d249a 100644 --- a/pod/perlmodlib.pod +++ b/pod/perlmodlib.pod @@ -114,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 @@ -288,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 @@ -444,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 @@ -484,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 @@ -794,66 +802,87 @@ modules are: =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 @@ -1217,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. @@ -1416,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 Many applications contain some Perl code that could be reused. +=item * + +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 * -=item Take the opportunity to reconsider and redesign the interfaces. +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: