X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperlmodlib.pod;h=1c5808058ea38761adc4475b4f40ba09ddac97d4;hb=aaa68c4a88ea4a62f62819baf4cacc0ca679c5fa;hp=abfa657f61365580548e059cde491766ecb72fbe;hpb=4438c4b75b842b6c829a7da9841e97abb875b1d8;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perlmodlib.pod b/pod/perlmodlib.pod index abfa657..1c58080 100644 --- a/pod/perlmodlib.pod +++ b/pod/perlmodlib.pod @@ -36,7 +36,7 @@ which lasts until the end of that BLOCK. Some pragmas are lexically scoped--typically those that affect the C<$^H> hints variable. Others affect the current package instead, -like C and C, whic allow you to predeclare a +like C and C, which allow you to predeclare a variables or subroutines within a particular I rather than just a block. Such declarations are effective for the entire file for which they were declared. You cannot rescind them with C string literal escape. + =item constant -declare constants +Declare constants =item diagnostics @@ -72,31 +84,35 @@ Perl compiler pragma to force verbose warning diagnostics =item fields -compile-time class fields +Compile-time class fields =item filetest -control the filetest permission operators +Control the filetest permission operators =item integer -compute arithmetic in integer instead of double +Compute arithmetic in integer instead of double =item less -perl pragma to request less of something from the compiler +Request less of something from the compiler =item lib -manipulate @INC at compile time +Manipulate @INC at compile time =item locale -use and avoid POSIX locales for built-in operations +Use and avoid POSIX locales for built-in operations + +=item open + +Set default disciplines for input and output =item ops -restrict unsafe operations when compiling +Restrict unsafe operations when compiling =item overload @@ -104,35 +120,31 @@ Package for overloading perl operations =item re -alter regular expression behavior +Alter regular expression behaviour =item sigtrap -enable simple signal handling +Enable simple signal handling =item strict -restrict unsafe constructs +Restrict unsafe constructs =item subs -predeclare sub names +Predeclare sub names =item utf8 -turn on UTF-8 and Unicode support +Enable/disable UTF-8 in source code =item vars -predeclare global variable names +Predeclare global variable names (obsolete) =item warnings -control optional warnings - -=item vmsish - -control VMS-specific language features +Control optional warnings =back @@ -146,19 +158,19 @@ Exporter module. See their own documentation for details. =item AnyDBM_File -provide framework for multiple DBMs +Provide framework for multiple DBMs =item AutoLoader -load subroutines only on demand +Load subroutines only on demand =item AutoSplit -split a package for autoloading +Split a package for autoloading =item B -The Perl Compiler; See also L. +The Perl Compiler =item B::Asmdata @@ -218,7 +230,11 @@ Generates cross reference reports for Perl programs =item Benchmark -benchmark running times of code +Benchmark running times of Perl code + +=item ByteLoader + +Load byte compiled perl code =item CGI @@ -226,7 +242,7 @@ Simple Common Gateway Interface Class =item CGI::Apache -Make things work with CGI.pm against Perl-Apache API +Backward compatibility module for CGI.pm =item CGI::Carp @@ -240,17 +256,21 @@ Interface to Netscape Cookies CGI Interface for Fast CGI +=item CGI::Pretty + +Module to produce nicely formatted HTML code + =item CGI::Push Simple Interface to Server Push =item CGI::Switch -Try more than one constructors and return the first object available +Backward compatibility module for defunct CGI::Switch =item CPAN -query, download and build perl modules from CPAN sites +Query, download and build perl modules from CPAN sites =item CPAN::FirstTime @@ -262,71 +282,59 @@ Wrapper around CPAN.pm without using any XS module =item Carp -warn of errors (from perspective of caller) +Warn of errors (from perspective of caller) -=item Class::Struct +=item Carp::Heavy -declare struct-like datatypes as Perl classes +Carp guts -=item Config +=item Class::Struct -access Perl configuration information +Declare struct-like datatypes as Perl classes =item Cwd -get pathname of current working directory +Get pathname of current working directory =item DB -programmatic interface to the Perl debugging API +Programmatic interface to the Perl debugging API (draft, subject to =item DB_File Perl5 access to Berkeley DB version 1.x -=item Data::Dumper - -stringified perl data structures, suitable for both printing and C - -=item Devel::Peek - -A data debugging tool for the XS programmer - =item Devel::SelfStubber -generate stubs for a SelfLoading module +Generate stubs for a SelfLoading module =item DirHandle -supply object methods for directory handles +Supply object methods for directory handles =item Dumpvalue -provides screen dump of Perl data. - -=item DynaLoader - -Dynamically load C libraries into Perl code +Provides screen dump of Perl data. =item English -use nice English (or awk) names for ugly punctuation variables +Use nice English (or awk) names for ugly punctuation variables =item Env -perl module that imports environment variables - -=item Errno - -System errno constants +Perl module that imports environment variables as scalars or arrays =item Exporter Implements default import method for modules +=item Exporter::Heavy + +Exporter guts + =item ExtUtils::Command -utilities to replace common UNIX commands in Makefiles etc. +Utilities to replace common UNIX commands in Makefiles etc. =item ExtUtils::Embed @@ -334,7 +342,7 @@ Utilities for embedding Perl in C/C++ applications =item ExtUtils::Install -install files from here to there +Install files from here to there =item ExtUtils::Installed @@ -342,63 +350,67 @@ Inventory management of installed modules =item ExtUtils::Liblist -determine libraries to use and how to use them +Determine libraries to use and how to use them + +=item ExtUtils::MM_Cygwin + +Methods to override UN*X behaviour in ExtUtils::MakeMaker =item ExtUtils::MM_OS2 -methods to override UN*X behavior in ExtUtils::MakeMaker +Methods to override UN*X behaviour in ExtUtils::MakeMaker =item ExtUtils::MM_Unix -methods used by ExtUtils::MakeMaker +Methods used by ExtUtils::MakeMaker =item ExtUtils::MM_VMS -methods to override UN*X behavior in ExtUtils::MakeMaker +Methods to override UN*X behaviour in ExtUtils::MakeMaker =item ExtUtils::MM_Win32 -methods to override UN*X behavior in ExtUtils::MakeMaker +Methods to override UN*X behaviour in ExtUtils::MakeMaker =item ExtUtils::MakeMaker -create an extension Makefile +Create an extension Makefile =item ExtUtils::Manifest -utilities to write and check a MANIFEST file - -=item ExtUtils::Miniperl - -write the C code for perlmain.c +Utilities to write and check a MANIFEST file =item ExtUtils::Mkbootstrap -make a bootstrap file for use by DynaLoader +Make a bootstrap file for use by DynaLoader =item ExtUtils::Mksymlists -write linker options files for dynamic extension +Write linker options files for dynamic extension =item ExtUtils::Packlist -manage .packlist files +Manage .packlist files =item ExtUtils::testlib -add blib/* directories to @INC +Add blib/* directories to @INC =item Fatal -replace functions with equivalents which succeed or die +Replace functions with equivalents which succeed or die =item Fcntl -load the C Fcntl.h defines +Load the C Fcntl.h defines =item File::Basename -split a pathname into pieces +Split a pathname into pieces + +=item File::CheckTree + +Run many filetest checks on a tree =item File::Compare @@ -414,19 +426,19 @@ DOS like globbing and then some =item File::Find -traverse a file tree +Traverse a file tree =item File::Path -create or remove a series of directories +Create or remove directory trees =item File::Spec -portably perform operations on file names +Portably perform operations on file names =item File::Spec::Functions -portably perform operations on file names +Portably perform operations on file names =item File::Spec::Mac @@ -434,43 +446,43 @@ File::Spec for MacOS =item File::Spec::OS2 -methods for OS/2 file specs +Methods for OS/2 file specs =item File::Spec::Unix -methods used by File::Spec +Methods used by File::Spec =item File::Spec::VMS -methods for VMS file specs +Methods for VMS file specs =item File::Spec::Win32 -methods for Win32 file specs +Methods for Win32 file specs + +=item File::Temp + +Return name and handle of a temporary file safely =item File::stat -by-name interface to Perl's built-in stat() functions +By-name interface to Perl's built-in stat() functions =item FileCache -keep more files open than the system permits +Keep more files open than the system permits =item FileHandle -supply object methods for filehandles +Supply object methods for filehandles =item FindBin Locate directory of original perl script -=item GDBM_File - -Perl5 access to the gdbm library. - =item Getopt::Long -extended processing of command line options +Extended processing of command line options =item Getopt::Std @@ -478,131 +490,123 @@ Process single-character switches with switch clustering =item I18N::Collate -compare 8-bit scalar data according to the current locale +Compare 8-bit scalar data according to the current locale =item IO -load various IO modules - -=item IO::Dir - -supply object methods for directory handles - -=item IO::File +Load various IO modules -supply object methods for filehandles - -=item IO::Handle +=item IPC::Open2 -supply object methods for I/O handles +Open a process for both reading and writing -=item IO::Pipe +=item IPC::Open3 -supply object methods for pipes +Open a process for reading, writing, and error handling -=item IO::Poll +=item Math::BigFloat -Object interface to system poll call +Arbitrary length float math package -=item IO::Seekable +=item Math::BigInt -supply seek based methods for I/O objects +Arbitrary size integer math package -=item IO::Select +=item Math::Complex -OO interface to the select system call +Complex numbers and associated mathematical functions -=item IO::Socket +=item Math::Trig -Object interface to socket communications +Trigonometric functions -=item IO::Socket::INET +=item NDBM_File -Object interface for AF_INET domain sockets +Tied access to ndbm files -=item IO::Socket::UNIX +=item Net::Ping -Object interface for AF_UNIX domain sockets +Check a remote host for reachability -=item IPC::Msg +=item Net::hostent -SysV Msg IPC object class +By-name interface to Perl's built-in gethost*() functions -=item IPC::Open2 +=item Net::netent -open a process for both reading and writing +By-name interface to Perl's built-in getnet*() functions -=item IPC::Open3 +=item Net::protoent -open a process for reading, writing, and error handling +By-name interface to Perl's built-in getproto*() functions -=item IPC::Semaphore +=item Net::servent -SysV Semaphore IPC object class +By-name interface to Perl's built-in getserv*() functions -=item IPC::SysV +=item O -SysV IPC constants +Generic interface to Perl Compiler backends -=item Math::BigFloat +=item ODBM_File -Arbitrary length float math package +Tied access to odbm files -=item Math::BigInt +=item Opcode -Arbitrary size integer math package +Disable named opcodes when compiling perl code -=item Math::Complex +=item Pod::Checker -complex numbers and associated mathematical functions +Check pod documents for syntax errors -=item Math::Trig +=item Pod::Find -trigonometric functions +Find POD documents in directory trees -=item NDBM_File +=item Pod::Html -Tied access to ndbm files +Module to convert pod files to HTML -=item Net::Ping +=item Pod::InputObjects -check a remote host for reachability +Objects representing POD input paragraphs, commands, etc. -=item Net::hostent +=item Pod::Man -by-name interface to Perl's built-in gethost*() functions +Convert POD data to formatted *roff input -=item Net::netent +=item Pod::ParseUtils -by-name interface to Perl's built-in getnet*() functions +Helpers for POD parsing and conversion -=item Net::protoent +=item Pod::Parser -by-name interface to Perl's built-in getproto*() functions +Base class for creating POD filters and translators -=item Net::servent +=item Pod::Plainer -by-name interface to Perl's built-in getserv*() functions +Perl extension for converting Pod to old style Pod. -=item O +=item Pod::Select -Generic interface to Perl Compiler backends +Extract selected sections of POD from input -=item Opcode +=item Pod::Text -Disable named opcodes when compiling perl code +Convert POD data to formatted ASCII text -=item POSIX +=item Pod::Text::Color -Perl interface to IEEE Std 1003.1 +Convert POD data to formatted color ASCII text -=item Pod::Html +=item Pod::Text::Termcap -module to convert pod files to HTML +Convert POD data to ASCII text with format escapes -=item Pod::Text +=item Pod::Usage -convert POD data to formatted ASCII text +Print a usage message from embedded pod documentation =item SDBM_File @@ -614,35 +618,31 @@ Compile and execute code in restricted compartments =item Search::Dict -search for key in dictionary file +Search for key in dictionary file =item SelectSaver -save and restore selected file handle +Save and restore selected file handle =item SelfLoader -load functions only on demand +Load functions only on demand =item Shell -run shell commands transparently within perl +Run shell commands transparently within perl =item Socket -load the C socket.h defines and structure manipulators +Load the C socket.h defines and structure manipulators =item Symbol -manipulate Perl symbols and their names - -=item Sys::Hostname - -Try every conceivable way to get hostname +Manipulate Perl symbols and their names -=item Sys::Syslog +=item Term::ANSIColor -Perl interface to the UNIX syslog(3) calls +Color screen output using ANSI escape sequences =item Term::Cap @@ -654,73 +654,51 @@ Perl word completion module =item Term::ReadLine -Perl interface to various C packages. +Perl interface to various C packages. If =item Test -provides a simple framework for writing test scripts +Provides a simple framework for writing test scripts =item Test::Harness -run perl standard test scripts with statistics +Run perl standard test scripts with statistics =item Text::Abbrev -create an abbreviation table from a list +Create an abbreviation table from a list =item Text::ParseWords -parse text into an array of tokens or array of arrays +Parse text into an array of tokens or array of arrays =item Text::Soundex Implementation of the Soundex Algorithm as Described by Knuth -=item Text::Tabs -- expand and unexpand tabs per the unix expand(1) and unexpand(1) - =item Text::Wrap -line wrapping to form simple paragraphs - -=item Thread - -multithreading - -=item Thread::Queue - -thread-safe queues - -=item Thread::Semaphore - -thread-safe semaphores - -=item Thread::Signal - -Start a thread which runs signal handlers reliably - -=item Thread::Specific - -thread-specific keys +Line wrapping to form simple paragraphs =item Tie::Array -base class for tied arrays +Base class for tied arrays =item Tie::Handle -base class definitions for tied handles +Base class definitions for tied handles -=item Tie::Hash, Tie::StdHash +=item Tie::Hash -base class definitions for tied hashes +Base class definitions for tied hashes =item Tie::RefHash -use references as hash keys +Use references as hash keys -=item Tie::Scalar, Tie::StdScalar +=item Tie::Scalar -base class definitions for tied scalars +Base class definitions for tied scalars =item Tie::SubstrHash @@ -728,36 +706,36 @@ Fixed-table-size, fixed-key-length hashing =item Time::Local -efficiently compute time from local and GMT time +Efficiently compute time from local and GMT time =item Time::gmtime -by-name interface to Perl's built-in gmtime() function +By-name interface to Perl's built-in gmtime() function =item Time::localtime -by-name interface to Perl's built-in localtime() function +By-name interface to Perl's built-in localtime() function =item Time::tm -internal object used by Time::gmtime and Time::localtime +Internal object used by Time::gmtime and Time::localtime =item UNIVERSAL -base class for ALL classes (blessed references) +Base class for ALL classes (blessed references) =item User::grent -by-name interface to Perl's built-in getgr*() functions +By-name interface to Perl's built-in getgr*() functions =item User::pwent -by-name interface to Perl's built-in getpw*() functions +By-name interface to Perl's built-in getpw*() functions =back To find out I modules installed on your system, including -those without documentation or outside the standard release, +those without documentation or outside the standard release, jus tdo this: % find `perl -e 'print "@INC"'` -name '*.pm' -print @@ -788,7 +766,7 @@ like Alta Vista or Deja News. CPAN stands for Comprehensive Perl Archive Network; it's a globally replicated trove of Perl materials, including documentation, style -guides, tricks and trap, alternate ports to non-Unix systems and +guides, tricks and traps, alternate ports to non-Unix systems and occasional binary distributions for these. Search engines for CPAN can be found at http://cpan.perl.com/ and at http://theory.uwinnipeg.ca/mod_perl/cpan-search.pl . @@ -871,137 +849,172 @@ You should try to choose one close to you: =item Africa - South Africa ftp://ftp.is.co.za/programming/perl/CPAN/ + South Africa ftp://ftp.is.co.za/programming/perl/CPAN/ + ftp://ftp.saix.net/pub/CPAN/ + ftp://ftp.sun.ac.za/CPAN/ ftp://ftpza.co.za/pub/mirrors/cpan/ + =item Asia - 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/ + China ftp://freesoft.cei.gov.cn/pub/languages/perl/CPAN/ + Hong Kong ftp://ftp.pacific.net.hk/pub/mirror/CPAN/ + Indonesia ftp://malone.piksi.itb.ac.id/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://ftp.meisei-u.ac.jp/pub/CPAN/ ftp://ftp.ring.gr.jp/pub/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/ + Saudi-Arabia ftp://ftp.isu.net.sa/pub/CPAN/ + Singapore ftp://ftp.nus.edu.sg/pub/unix/perl/CPAN/ + South Korea ftp://ftp.bora.net/pub/CPAN/ + ftp://ftp.kornet.net/pub/CPAN/ ftp://ftp.nuri.net/pub/CPAN/ - Taiwan ftp://ftp.wownet.net/pub2/PERL/ + Taiwan ftp://coda.nctu.edu.tw/computer-languages/perl/CPAN/ + ftp://ftp.ee.ncku.edu.tw/pub3/perl/CPAN/ ftp://ftp1.sinica.edu.tw/pub1/perl/CPAN/ - Thailand ftp://ftp.cs.riubon.ac.th/pub/mirrors/CPAN/ - ftp://ftp.nectec.or.th/pub/mirrors/CPAN/ + Thailand ftp://ftp.nectec.or.th/pub/mirrors/CPAN/ + =item Australasia - Australia ftp://cpan.topend.com.au/pub/CPAN/ - ftp://ftp.labyrinth.net.au/pub/perl/CPAN/ + Australia ftp://cpan.topend.com.au/pub/CPAN/ + ftp://ftp.labyrinth.net.au/pub/perl-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/ + 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/ +=item Central America + + Costa Rica ftp://ftp.ucr.ac.cr/pub/Unix/CPAN/ + =item 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/ + 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/ + 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.grolier.fr/pub/perl/CPAN/ + 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.uvsq.fr/pub/perl/CPAN/ + German ftp://ftp.gigabell.net/pub/CPAN/ + Germany ftp://ftp.archive.de.uu.net/pub/CPAN/ + ftp://ftp.freenet.de/pub/ftp.cpan.org/pub/ + ftp://ftp.gmd.de/packages/CPAN/ + ftp://ftp.gwdg.de/pub/languages/perl/CPAN/ + +ftp://ftp.leo.org/pub/comp/general/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/ + Germany ftp://ftp.archive.de.uu.net/pub/CPAN/ + ftp://ftp.freenet.de/pub/ftp.cpan.org/pub/ 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.leo.org/pub/comp/general/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/ + Greece ftp://ftp.ntua.gr/pub/lang/perl/ + Hungary ftp://ftp.kfki.hu/pub/packages/perl/CPAN/ + Iceland ftp://ftp.gm.is/pub/CPAN/ + Ireland ftp://cpan.indigo.ie/pub/CPAN/ + ftp://sunsite.compapp.dcu.ie/pub/perl/ + Italy ftp://cis.uniRoma2.it/CPAN/ ftp://ftp.flashnet.it/pub/CPAN/ ftp://ftp.unina.it/pub/Other/CPAN/ ftp://ftp.unipi.it/pub/mirror/perl/CPAN/ - Netherlands ftp://ftp.cs.uu.nl/mirror/CPAN/ - ftp://ftp.EU.net/packages/cpan/ + Netherlands ftp://ftp.cs.uu.nl/mirror/CPAN/ ftp://ftp.nluug.nl/pub/languages/perl/CPAN/ - Norway ftp://ftp.uit.no/pub/languages/perl/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/doc/CPAN/ + Poland 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/mirrors/cpan/ + Portugal ftp://ftp.ci.uminho.pt/pub/mirrors/cpan/ ftp://ftp.ist.utl.pt/pub/CPAN/ ftp://ftp.ua.pt/pub/CPAN/ - Romania ftp://ftp.dntis.ro/pub/mirrors/perl-cpan/ - ftp://ftp.dnttm.ro/pub/CPAN/ + Romania ftp://ftp.dnttm.ro/pub/CPAN/ Russia ftp://ftp.chg.ru/pub/lang/perl/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/ + 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/ - Turkey ftp://sunsite.bilkent.edu.tr/pub/languages/CPAN/ - United Kingdom ftp://ftp.demon.co.uk/pub/mirrors/perl/CPAN/ + Sweden ftp://ftp.sunet.se/pub/lang/perl/CPAN/ + Switzerland ftp://sunsite.cnlab-switch.ch/mirror/CPAN/ + Turkey 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.mirror.ac.uk/sites/ftp.funet.fi/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/ + =item North America - Alberta ftp://sunsite.ualberta.ca/pub/Mirror/CPAN/ + Alberta ftp://sunsite.ualberta.ca/pub/Mirror/CPAN/ California ftp://cpan.nas.nasa.gov/pub/perl/CPAN/ + ftp://cpan.valueclick.com/CPAN/ ftp://ftp.cdrom.com/pub/perl/CPAN/ - ftp://ftp.digital.com/pub/plan/perl/CPAN/ - Colorado ftp://ftp.cs.colorado.edu/pub/perl/CPAN/ - Florida ftp://ftp.cise.ufl.edu/pub/perl/CPAN/ - Illinois ftp://uiarchive.uiuc.edu/pub/lang/perl/CPAN/ - Indiana ftp://csociety-ftp.ecn.purdue.edu/pub/CPAN/ + http://download.sourceforge.net/mirrors/CPAN/ + Colorado ftp://ftp.cs.colorado.edu/pub/perl/CPAN/ + Florida ftp://ftp.cise.ufl.edu/pub/perl/CPAN/ + Georgia ftp://ftp.twoguys.org/CPAN/ + Illinois ftp://uiarchive.uiuc.edu/pub/lang/perl/CPAN/ + Indiana ftp://csociety-ftp.ecn.purdue.edu/pub/CPAN/ ftp://ftp.uwsg.indiana.edu/pub/perl/CPAN/ - Manitoba ftp://theory.uwinnipeg.ca/pub/CPAN/ - Massachusetts ftp://ftp.ccs.neu.edu/net/mirrors/ftp.funet.fi/pub/languages/perl/CPAN/ + Kentucky ftp://ftp.uky.edu/CPAN/ + Manitoba ftp://theoryx5.uwinnipeg.ca/pub/CPAN/ + Massachusetts +ftp://ftp.ccs.neu.edu/net/mirrors/ftp.funet.fi/pub/languages/perl/CPAN/ ftp://ftp.iguide.com/pub/mirrors/packages/perl/CPAN/ Mexico ftp://ftp.msg.com.mx/pub/CPAN/ - Minnesota ftp://ftp.midearthbbs.com/CPAN/ - New York ftp://ftp.rge.com/pub/languages/perl/ - North Carolina ftp://ftp.duke.edu/pub/perl/ - Oklahoma ftp://ftp.ou.edu/mirrors/CPAN/ + New York ftp://ftp.deao.net/pub/CPAN/ + ftp://ftp.rge.com/pub/languages/perl/ + North Carolina ftp://ftp.duke.edu/pub/perl/ + Nova Scotia ftp://cpan.chebucto.ns.ca/pub/CPAN/ + Oklahoma ftp://ftp.ou.edu/mirrors/CPAN/ Ontario ftp://ftp.crc.ca/pub/packages/lang/perl/CPAN/ - Oregon ftp://ftp.orst.edu/pub/packages/CPAN/ - Pennsylvania ftp://ftp.epix.net/pub/languages/perl/ - Texas ftp://ftp.sedl.org/pub/mirrors/CPAN/ - Utah ftp://mirror.xmission.com/CPAN/ - Virginia ftp://ftp.perl.org/pub/perl/CPAN/ + Oregon ftp://ftp.orst.edu/pub/packages/CPAN/ + Pennsylvania ftp://ftp.epix.net/pub/languages/perl/ + Tennessee ftp://ftp.sunsite.utk.edu/pub/CPAN/ + Texas ftp://ftp.sedl.org/pub/mirrors/CPAN/ + ftp://jhcloos.com/pub/mirror/CPAN/ + Utah ftp://mirror.xmission.com/CPAN/ + Virginia ftp://ftp.perl.org/pub/perl/CPAN/ ftp://ruff.cs.jmu.edu/pub/CPAN/ Washington ftp://ftp-mirror.internap.com/pub/CPAN/ + ftp://ftp.llarian.net/pub/CPAN/ ftp://ftp.spu.edu/pub/CPAN/ + =item South America - Brazil ftp://cpan.if.usp.br/pub/mirror/CPAN/ - Chile ftp://sunsite.dcc.uchile.cl/pub/Lang/perl/CPAN/ + Brazil ftp://cpan.if.usp.br/pub/mirror/CPAN/ + ftp://ftp.matrix.com.br/pub/perl/ + Chile ftp://sunsite.dcc.uchile.cl/pub/Lang/PERL/ =back For an up-to-date listing of CPAN sites, -see http://www.perl.com/perl/CPAN or ftp://www.perl.com/perl/ . +see http://www.perl.com/perl/CPAN/SITES or ftp://www.perl.com/CPAN/SITES . =head1 Modules: Creation, Use, and Abuse @@ -1022,7 +1035,7 @@ 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 F<.pm> file is required to -exist. See L, L, and L for details about +exist. See L, L, and L for details about the AUTOLOAD mechanism. =head2 Guidelines for Module Creation @@ -1045,24 +1058,26 @@ scheme as the original author. =item Try to design the new module to be easy to extend and reuse. -Always use B<-w>. +Try to C (or C). +Remember that you can add C to individual blocks +of code that need less warnings. 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; + 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; + my $self = shift; + my $class = ref($self) || $self; + return bless {}, $class; } Pass arrays as references so more parameters can be added later @@ -1075,8 +1090,8 @@ Generally you can delete the C part with no harm at all. Let the objects look after themselves! Generally, avoid hard-wired class names as far as possible. -Avoid C<$r-EClass::func()> where using C<@ISA=qw(... Class ...)> and -C<$r-Efunc()> would work (see L for more details). +Avoid C<< $r->Class::func() >> where using C<@ISA=qw(... Class ...)> and +C<< $r->func() >> would work (see L for more details). Use autosplit so little used or newly added functions won't be a burden to programs that don't use them. Add test functions to @@ -1094,13 +1109,13 @@ 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 B<-w>. +Always use B<-w>. Try to C (or C). Remember that you can add C to individual blocks -of code that need less strictness. +of code that need less strictness. -Always use B<-w>. +Always use B<-w>. Follow the guidelines in the perlstyle(1) manual. @@ -1133,7 +1148,7 @@ or nature of a variable. For example: $no_caps_here function scope my() or local() variables Function and method names seem to work best as all lowercase. -e.g., C<$obj-Eas_string()>. +e.g., C<< $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. @@ -1149,7 +1164,7 @@ 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 C<$blessed_ref-Emethod>) +module using the ModuleName::item_name (or C<< $blessed_ref->method >>) syntax. By convention you can use a leading underscore on names to indicate informally that they are 'internal' and not for public use. @@ -1289,7 +1304,7 @@ module (or the module itself if small) to the comp.lang.perl.announce Usenet newsgroup. This will at least ensure very wide once-off distribution. -If possible, register the module with CPAN. You should +If possible, register the module with CPAN. You should include details of its location in your announcement. Some notes about ftp archives: Please use a long descriptive file @@ -1303,16 +1318,17 @@ location. FTP Archives for Perl Modules: -Follow the instructions and links on +Follow the instructions and links on: - http://franz.ww.tu-berlin.de/modulelist + http://www.perl.com/CPAN/modules/00modlist.long.html + http://www.perl.com/CPAN/modules/04pause.html or upload to one of these sites: - ftp://franz.ww.tu-berlin.de/incoming - ftp://ftp.cis.ufl.edu/incoming + https://pause.kbx.de/pause/ + http://pause.perl.org/pause/ -and notify >. +and notify . By using the WWW interface you can ask the Upload Server to mirror your modules from your ftp or WWW site into your own directory on