1PERLMODLIB(1) Perl Programmers Reference Guide PERLMODLIB(1)
2
3
4
6 perlmodlib - constructing new Perl modules and finding existing ones
7
9 Many modules are included in the Perl distribution. These are
10 described below, and all end in .pm. You may discover compiled library
11 files (usually ending in .so) or small pieces of modules to be
12 autoloaded (ending in .al); these were automatically generated by the
13 installation process. You may also discover files in the library
14 directory that end in either .pl or .ph. These are old libraries
15 supplied so that old programs that use them still run. The .pl files
16 will all eventually be converted into standard modules, and the .ph
17 files made by h2ph will probably end up as extension modules made by
18 h2xs. (Some .ph values may already be available through the POSIX,
19 Errno, or Fcntl modules.) The pl2pm file in the distribution may help
20 in your conversion, but it's just a mechanical process and therefore
21 far from bulletproof.
22
23 Pragmatic Modules
24 They work somewhat like compiler directives (pragmata) in that they
25 tend to affect the compilation of your program, and thus will usually
26 work well only when used within a "use", or "no". Most of these are
27 lexically scoped, so an inner BLOCK may countermand them by saying:
28
29 no integer;
30 no strict 'refs';
31 no warnings;
32
33 which lasts until the end of that BLOCK.
34
35 Some pragmas are lexically scoped--typically those that affect the $^H
36 hints variable. Others affect the current package instead, like "use
37 vars" and "use subs", which allow you to predeclare a variables or
38 subroutines within a particular file rather than just a block. Such
39 declarations are effective for the entire file for which they were
40 declared. You cannot rescind them with "no vars" or "no subs".
41
42 The following pragmas are defined (and have their own documentation).
43
44 attributes Get/set subroutine or variable attributes
45
46 autodie Replace functions with ones that succeed or die with
47 lexical scope
48
49 autodie::exception
50 Exceptions from autodying functions.
51
52 autodie::exception::system
53 Exceptions from autodying system().
54
55 autodie::hints
56 Provide hints about user subroutines to autodie
57
58 autodie::skip
59 Skip a package when throwing autodie exceptions
60
61 autouse Postpone load of modules until a function is used
62
63 base Establish an ISA relationship with base classes at compile
64 time
65
66 bigint Transparent BigInteger support for Perl
67
68 bignum Transparent BigNumber support for Perl
69
70 bigrat Transparent BigNumber/BigRational support for Perl
71
72 blib Use MakeMaker's uninstalled version of a package
73
74 bytes Expose the individual bytes of characters
75
76 charnames Access to Unicode character names and named character
77 sequences; also define character names
78
79 constant Declare constants
80
81 deprecate Perl pragma for deprecating the inclusion of a module in
82 core
83
84 diagnostics Produce verbose warning diagnostics
85
86 encoding Allows you to write your script in non-ASCII and non-UTF-8
87
88 encoding::warnings
89 Warn on implicit encoding conversions
90
91 experimental
92 Experimental features made easy
93
94 feature Enable new features
95
96 fields Compile-time class fields
97
98 filetest Control the filetest permission operators
99
100 if "use" a Perl module if a condition holds
101
102 integer Use integer arithmetic instead of floating point
103
104 less Request less of something
105
106 lib Manipulate @INC at compile time
107
108 locale Use or avoid POSIX locales for built-in operations
109
110 mro Method Resolution Order
111
112 ok Alternative to Test::More::use_ok
113
114 open Set default PerlIO layers for input and output
115
116 ops Restrict unsafe operations when compiling
117
118 overload Package for overloading Perl operations
119
120 overloading Lexically control overloading
121
122 parent Establish an ISA relationship with base classes at compile
123 time
124
125 re Alter regular expression behaviour
126
127 sigtrap Enable simple signal handling
128
129 sort Control sort() behaviour
130
131 strict Restrict unsafe constructs
132
133 subs Predeclare subroutine names
134
135 threads Perl interpreter-based threads
136
137 threads::shared
138 Perl extension for sharing data structures between threads
139
140 utf8 Enable/disable UTF-8 (or UTF-EBCDIC) in source code
141
142 vars Predeclare global variable names
143
144 version Perl extension for Version Objects
145
146 vmsish Control VMS-specific language features
147
148 warnings Control optional warnings
149
150 warnings::register
151 Warnings import function
152
153 Standard Modules
154 Standard, bundled modules are all expected to behave in a well-defined
155 manner with respect to namespace pollution because they use the
156 Exporter module. See their own documentation for details.
157
158 It's possible that not all modules listed below are installed on your
159 system. For example, the GDBM_File module will not be installed if you
160 don't have the gdbm library.
161
162 Amiga::ARexx
163 Perl extension for ARexx support
164
165 Amiga::Exec Perl extension for low level amiga support
166
167 AnyDBM_File Provide framework for multiple DBMs
168
169 App::Cpan Easily interact with CPAN from the command line
170
171 App::Prove Implements the "prove" command.
172
173 App::Prove::State
174 State storage for the "prove" command.
175
176 App::Prove::State::Result
177 Individual test suite results.
178
179 App::Prove::State::Result::Test
180 Individual test results.
181
182 Archive::Tar
183 Module for manipulations of tar archives
184
185 Archive::Tar::File
186 A subclass for in-memory extracted file from Archive::Tar
187
188 Attribute::Handlers
189 Simpler definition of attribute handlers
190
191 AutoLoader Load subroutines only on demand
192
193 AutoSplit Split a package for autoloading
194
195 B The Perl Compiler Backend
196
197 B::Concise Walk Perl syntax tree, printing concise info about ops
198
199 B::Deparse Perl compiler backend to produce perl code
200
201 B::Op_private
202 OP op_private flag definitions
203
204 B::Showlex Show lexical variables used in functions or files
205
206 B::Terse Walk Perl syntax tree, printing terse info about ops
207
208 B::Xref Generates cross reference reports for Perl programs
209
210 Benchmark Benchmark running times of Perl code
211
212 "IO::Socket::IP"
213 Family-neutral IP socket supporting both IPv4 and IPv6
214
215 "Socket" Networking constants and support functions
216
217 CORE Namespace for Perl's core routines
218
219 CPAN Query, download and build perl modules from CPAN sites
220
221 CPAN::API::HOWTO
222 A recipe book for programming with CPAN.pm
223
224 CPAN::Debug Internal debugging for CPAN.pm
225
226 CPAN::Distroprefs
227 Read and match distroprefs
228
229 CPAN::FirstTime
230 Utility for CPAN::Config file Initialization
231
232 CPAN::HandleConfig
233 Internal configuration handling for CPAN.pm
234
235 CPAN::Kwalify
236 Interface between CPAN.pm and Kwalify.pm
237
238 CPAN::Meta The distribution metadata for a CPAN dist
239
240 CPAN::Meta::Converter
241 Convert CPAN distribution metadata structures
242
243 CPAN::Meta::Feature
244 An optional feature provided by a CPAN distribution
245
246 CPAN::Meta::History
247 History of CPAN Meta Spec changes
248
249 CPAN::Meta::History::Meta_1_0
250 Version 1.0 metadata specification for META.yml
251
252 CPAN::Meta::History::Meta_1_1
253 Version 1.1 metadata specification for META.yml
254
255 CPAN::Meta::History::Meta_1_2
256 Version 1.2 metadata specification for META.yml
257
258 CPAN::Meta::History::Meta_1_3
259 Version 1.3 metadata specification for META.yml
260
261 CPAN::Meta::History::Meta_1_4
262 Version 1.4 metadata specification for META.yml
263
264 CPAN::Meta::Merge
265 Merging CPAN Meta fragments
266
267 CPAN::Meta::Prereqs
268 A set of distribution prerequisites by phase and type
269
270 CPAN::Meta::Requirements
271 A set of version requirements for a CPAN dist
272
273 CPAN::Meta::Spec
274 Specification for CPAN distribution metadata
275
276 CPAN::Meta::Validator
277 Validate CPAN distribution metadata structures
278
279 CPAN::Meta::YAML
280 Read and write a subset of YAML for CPAN Meta files
281
282 CPAN::Nox Wrapper around CPAN.pm without using any XS module
283
284 CPAN::Plugin
285 Base class for CPAN shell extensions
286
287 CPAN::Plugin::Specfile
288 Proof of concept implementation of a trivial CPAN::Plugin
289
290 CPAN::Queue Internal queue support for CPAN.pm
291
292 CPAN::Tarzip
293 Internal handling of tar archives for CPAN.pm
294
295 CPAN::Version
296 Utility functions to compare CPAN versions
297
298 Carp Alternative warn and die for modules
299
300 Class::Struct
301 Declare struct-like datatypes as Perl classes
302
303 Compress::Raw::Bzip2
304 Low-Level Interface to bzip2 compression library
305
306 Compress::Raw::Zlib
307 Low-Level Interface to zlib compression library
308
309 Compress::Zlib
310 Interface to zlib compression library
311
312 Config Access Perl configuration information
313
314 Config::Extensions
315 Hash lookup of which core extensions were built.
316
317 Config::Perl::V
318 Structured data retrieval of perl -V output
319
320 Cwd Get pathname of current working directory
321
322 DB Programmatic interface to the Perl debugging API
323
324 DBM_Filter Filter DBM keys/values
325
326 DBM_Filter::compress
327 Filter for DBM_Filter
328
329 DBM_Filter::encode
330 Filter for DBM_Filter
331
332 DBM_Filter::int32
333 Filter for DBM_Filter
334
335 DBM_Filter::null
336 Filter for DBM_Filter
337
338 DBM_Filter::utf8
339 Filter for DBM_Filter
340
341 DB_File Perl5 access to Berkeley DB version 1.x
342
343 Data::Dumper
344 Stringified perl data structures, suitable for both
345 printing and "eval"
346
347 Devel::PPPort
348 Perl/Pollution/Portability
349
350 Devel::Peek A data debugging tool for the XS programmer
351
352 Devel::SelfStubber
353 Generate stubs for a SelfLoading module
354
355 Digest Modules that calculate message digests
356
357 Digest::MD5 Perl interface to the MD5 Algorithm
358
359 Digest::SHA Perl extension for SHA-1/224/256/384/512
360
361 Digest::base
362 Digest base class
363
364 Digest::file
365 Calculate digests of files
366
367 DirHandle (obsolete) supply object methods for directory handles
368
369 Dumpvalue Provides screen dump of Perl data.
370
371 DynaLoader Dynamically load C libraries into Perl code
372
373 Encode Character encodings in Perl
374
375 Encode::Alias
376 Alias definitions to encodings
377
378 Encode::Byte
379 Single Byte Encodings
380
381 Encode::CJKConstants
382 Internally used by Encode::??::ISO_2022_*
383
384 Encode::CN China-based Chinese Encodings
385
386 Encode::CN::HZ
387 Internally used by Encode::CN
388
389 Encode::Config
390 Internally used by Encode
391
392 Encode::EBCDIC
393 EBCDIC Encodings
394
395 Encode::Encoder
396 Object Oriented Encoder
397
398 Encode::Encoding
399 Encode Implementation Base Class
400
401 Encode::GSM0338
402 ESTI GSM 03.38 Encoding
403
404 Encode::Guess
405 Guesses encoding from data
406
407 Encode::JP Japanese Encodings
408
409 Encode::JP::H2Z
410 Internally used by Encode::JP::2022_JP*
411
412 Encode::JP::JIS7
413 Internally used by Encode::JP
414
415 Encode::KR Korean Encodings
416
417 Encode::KR::2022_KR
418 Internally used by Encode::KR
419
420 Encode::MIME::Header
421 MIME encoding for an unstructured email header
422
423 Encode::MIME::Name
424 Internally used by Encode
425
426 Encode::PerlIO
427 A detailed document on Encode and PerlIO
428
429 Encode::Supported
430 Encodings supported by Encode
431
432 Encode::Symbol
433 Symbol Encodings
434
435 Encode::TW Taiwan-based Chinese Encodings
436
437 Encode::Unicode
438 Various Unicode Transformation Formats
439
440 Encode::Unicode::UTF7
441 UTF-7 encoding
442
443 English Use nice English (or awk) names for ugly punctuation
444 variables
445
446 Env Perl module that imports environment variables as scalars
447 or arrays
448
449 Errno System errno constants
450
451 Exporter Implements default import method for modules
452
453 Exporter::Heavy
454 Exporter guts
455
456 ExtUtils::CBuilder
457 Compile and link C code for Perl modules
458
459 ExtUtils::CBuilder::Platform::Windows
460 Builder class for Windows platforms
461
462 ExtUtils::Command
463 Utilities to replace common UNIX commands in Makefiles etc.
464
465 ExtUtils::Command::MM
466 Commands for the MM's to use in Makefiles
467
468 ExtUtils::Constant
469 Generate XS code to import C header constants
470
471 ExtUtils::Constant::Base
472 Base class for ExtUtils::Constant objects
473
474 ExtUtils::Constant::Utils
475 Helper functions for ExtUtils::Constant
476
477 ExtUtils::Constant::XS
478 Generate C code for XS modules' constants.
479
480 ExtUtils::Embed
481 Utilities for embedding Perl in C/C++ applications
482
483 ExtUtils::Install
484 Install files from here to there
485
486 ExtUtils::Installed
487 Inventory management of installed modules
488
489 ExtUtils::Liblist
490 Determine libraries to use and how to use them
491
492 ExtUtils::MM
493 OS adjusted ExtUtils::MakeMaker subclass
494
495 ExtUtils::MM::Utils
496 ExtUtils::MM methods without dependency on
497 ExtUtils::MakeMaker
498
499 ExtUtils::MM_AIX
500 AIX specific subclass of ExtUtils::MM_Unix
501
502 ExtUtils::MM_Any
503 Platform-agnostic MM methods
504
505 ExtUtils::MM_BeOS
506 Methods to override UN*X behaviour in ExtUtils::MakeMaker
507
508 ExtUtils::MM_Cygwin
509 Methods to override UN*X behaviour in ExtUtils::MakeMaker
510
511 ExtUtils::MM_DOS
512 DOS specific subclass of ExtUtils::MM_Unix
513
514 ExtUtils::MM_Darwin
515 Special behaviors for OS X
516
517 ExtUtils::MM_MacOS
518 Once produced Makefiles for MacOS Classic
519
520 ExtUtils::MM_NW5
521 Methods to override UN*X behaviour in ExtUtils::MakeMaker
522
523 ExtUtils::MM_OS2
524 Methods to override UN*X behaviour in ExtUtils::MakeMaker
525
526 ExtUtils::MM_QNX
527 QNX specific subclass of ExtUtils::MM_Unix
528
529 ExtUtils::MM_UWIN
530 U/WIN specific subclass of ExtUtils::MM_Unix
531
532 ExtUtils::MM_Unix
533 Methods used by ExtUtils::MakeMaker
534
535 ExtUtils::MM_VMS
536 Methods to override UN*X behaviour in ExtUtils::MakeMaker
537
538 ExtUtils::MM_VOS
539 VOS specific subclass of ExtUtils::MM_Unix
540
541 ExtUtils::MM_Win32
542 Methods to override UN*X behaviour in ExtUtils::MakeMaker
543
544 ExtUtils::MM_Win95
545 Method to customize MakeMaker for Win9X
546
547 ExtUtils::MY
548 ExtUtils::MakeMaker subclass for customization
549
550 ExtUtils::MakeMaker
551 Create a module Makefile
552
553 ExtUtils::MakeMaker::Config
554 Wrapper around Config.pm
555
556 ExtUtils::MakeMaker::FAQ
557 Frequently Asked Questions About MakeMaker
558
559 ExtUtils::MakeMaker::Locale
560 Bundled Encode::Locale
561
562 ExtUtils::MakeMaker::Tutorial
563 Writing a module with MakeMaker
564
565 ExtUtils::Manifest
566 Utilities to write and check a MANIFEST file
567
568 ExtUtils::Miniperl
569 Write the C code for miniperlmain.c and perlmain.c
570
571 ExtUtils::Mkbootstrap
572 Make a bootstrap file for use by DynaLoader
573
574 ExtUtils::Mksymlists
575 Write linker options files for dynamic extension
576
577 ExtUtils::Packlist
578 Manage .packlist files
579
580 ExtUtils::ParseXS
581 Converts Perl XS code into C code
582
583 ExtUtils::ParseXS::Constants
584 Initialization values for some globals
585
586 ExtUtils::ParseXS::Eval
587 Clean package to evaluate code in
588
589 ExtUtils::ParseXS::Utilities
590 Subroutines used with ExtUtils::ParseXS
591
592 ExtUtils::Typemaps
593 Read/Write/Modify Perl/XS typemap files
594
595 ExtUtils::Typemaps::Cmd
596 Quick commands for handling typemaps
597
598 ExtUtils::Typemaps::InputMap
599 Entry in the INPUT section of a typemap
600
601 ExtUtils::Typemaps::OutputMap
602 Entry in the OUTPUT section of a typemap
603
604 ExtUtils::Typemaps::Type
605 Entry in the TYPEMAP section of a typemap
606
607 ExtUtils::XSSymSet
608 Keep sets of symbol names palatable to the VMS linker
609
610 ExtUtils::testlib
611 Add blib/* directories to @INC
612
613 Fatal Replace functions with equivalents which succeed or die
614
615 Fcntl Load the C Fcntl.h defines
616
617 File::Basename
618 Parse file paths into directory, filename and suffix.
619
620 File::Compare
621 Compare files or filehandles
622
623 File::Copy Copy files or filehandles
624
625 File::DosGlob
626 DOS like globbing and then some
627
628 File::Fetch A generic file fetching mechanism
629
630 File::Find Traverse a directory tree.
631
632 File::Glob Perl extension for BSD glob routine
633
634 File::GlobMapper
635 Extend File Glob to Allow Input and Output Files
636
637 File::Path Create or remove directory trees
638
639 File::Spec Portably perform operations on file names
640
641 File::Spec::AmigaOS
642 File::Spec for AmigaOS
643
644 File::Spec::Cygwin
645 Methods for Cygwin file specs
646
647 File::Spec::Epoc
648 Methods for Epoc file specs
649
650 File::Spec::Functions
651 Portably perform operations on file names
652
653 File::Spec::Mac
654 File::Spec for Mac OS (Classic)
655
656 File::Spec::OS2
657 Methods for OS/2 file specs
658
659 File::Spec::Unix
660 File::Spec for Unix, base for other File::Spec modules
661
662 File::Spec::VMS
663 Methods for VMS file specs
664
665 File::Spec::Win32
666 Methods for Win32 file specs
667
668 File::Temp Return name and handle of a temporary file safely
669
670 File::stat By-name interface to Perl's built-in stat() functions
671
672 FileCache Keep more files open than the system permits
673
674 FileHandle Supply object methods for filehandles
675
676 Filter::Simple
677 Simplified source filtering
678
679 Filter::Util::Call
680 Perl Source Filter Utility Module
681
682 FindBin Locate directory of original perl script
683
684 GDBM_File Perl5 access to the gdbm library.
685
686 Getopt::Long
687 Extended processing of command line options
688
689 Getopt::Std Process single-character switches with switch clustering
690
691 HTTP::Tiny A small, simple, correct HTTP/1.1 client
692
693 Hash::Util A selection of general-utility hash subroutines
694
695 Hash::Util::FieldHash
696 Support for Inside-Out Classes
697
698 I18N::Collate
699 Compare 8-bit scalar data according to the current locale
700
701 I18N::LangTags
702 Functions for dealing with RFC3066-style language tags
703
704 I18N::LangTags::Detect
705 Detect the user's language preferences
706
707 I18N::LangTags::List
708 Tags and names for human languages
709
710 I18N::Langinfo
711 Query locale information
712
713 IO Load various IO modules
714
715 IO::Compress::Base
716 Base Class for IO::Compress modules
717
718 IO::Compress::Bzip2
719 Write bzip2 files/buffers
720
721 IO::Compress::Deflate
722 Write RFC 1950 files/buffers
723
724 IO::Compress::FAQ
725 Frequently Asked Questions about IO::Compress
726
727 IO::Compress::Gzip
728 Write RFC 1952 files/buffers
729
730 IO::Compress::RawDeflate
731 Write RFC 1951 files/buffers
732
733 IO::Compress::Zip
734 Write zip files/buffers
735
736 IO::Dir Supply object methods for directory handles
737
738 IO::File Supply object methods for filehandles
739
740 IO::Handle Supply object methods for I/O handles
741
742 IO::Pipe Supply object methods for pipes
743
744 IO::Poll Object interface to system poll call
745
746 IO::Seekable
747 Supply seek based methods for I/O objects
748
749 IO::Select OO interface to the select system call
750
751 IO::Socket Object interface to socket communications
752
753 IO::Socket::INET
754 Object interface for AF_INET domain sockets
755
756 IO::Socket::UNIX
757 Object interface for AF_UNIX domain sockets
758
759 IO::Uncompress::AnyInflate
760 Uncompress zlib-based (zip, gzip) file/buffer
761
762 IO::Uncompress::AnyUncompress
763 Uncompress gzip, zip, bzip2 or lzop file/buffer
764
765 IO::Uncompress::Base
766 Base Class for IO::Uncompress modules
767
768 IO::Uncompress::Bunzip2
769 Read bzip2 files/buffers
770
771 IO::Uncompress::Gunzip
772 Read RFC 1952 files/buffers
773
774 IO::Uncompress::Inflate
775 Read RFC 1950 files/buffers
776
777 IO::Uncompress::RawInflate
778 Read RFC 1951 files/buffers
779
780 IO::Uncompress::Unzip
781 Read zip files/buffers
782
783 IO::Zlib IO:: style interface to Compress::Zlib
784
785 IPC::Cmd Finding and running system commands made easy
786
787 IPC::Msg SysV Msg IPC object class
788
789 IPC::Open2 Open a process for both reading and writing using open2()
790
791 IPC::Open3 Open a process for reading, writing, and error handling
792 using open3()
793
794 IPC::Semaphore
795 SysV Semaphore IPC object class
796
797 IPC::SharedMem
798 SysV Shared Memory IPC object class
799
800 IPC::SysV System V IPC constants and system calls
801
802 Internals Reserved special namespace for internals related functions
803
804 JSON::PP JSON::XS compatible pure-Perl module.
805
806 JSON::PP::Boolean
807 Dummy module providing JSON::PP::Boolean
808
809 List::Util A selection of general-utility list subroutines
810
811 List::Util::XS
812 Indicate if List::Util was compiled with a C compiler
813
814 Locale::Maketext
815 Framework for localization
816
817 Locale::Maketext::Cookbook
818 Recipes for using Locale::Maketext
819
820 Locale::Maketext::Guts
821 Deprecated module to load Locale::Maketext utf8 code
822
823 Locale::Maketext::GutsLoader
824 Deprecated module to load Locale::Maketext utf8 code
825
826 Locale::Maketext::Simple
827 Simple interface to Locale::Maketext::Lexicon
828
829 Locale::Maketext::TPJ13
830 Article about software localization
831
832 MIME::Base64
833 Encoding and decoding of base64 strings
834
835 MIME::QuotedPrint
836 Encoding and decoding of quoted-printable strings
837
838 Math::BigFloat
839 Arbitrary size floating point math package
840
841 Math::BigInt
842 Arbitrary size integer/float math package
843
844 Math::BigInt::Calc
845 Pure Perl module to support Math::BigInt
846
847 Math::BigInt::FastCalc
848 Math::BigInt::Calc with some XS for more speed
849
850 Math::BigInt::Lib
851 Virtual parent class for Math::BigInt libraries
852
853 Math::BigRat
854 Arbitrary big rational numbers
855
856 Math::Complex
857 Complex numbers and associated mathematical functions
858
859 Math::Trig Trigonometric functions
860
861 Memoize Make functions faster by trading space for time
862
863 Memoize::AnyDBM_File
864 Glue to provide EXISTS for AnyDBM_File for Storable use
865
866 Memoize::Expire
867 Plug-in module for automatic expiration of memoized values
868
869 Memoize::ExpireFile
870 Test for Memoize expiration semantics
871
872 Memoize::ExpireTest
873 Test for Memoize expiration semantics
874
875 Memoize::NDBM_File
876 Glue to provide EXISTS for NDBM_File for Storable use
877
878 Memoize::SDBM_File
879 Glue to provide EXISTS for SDBM_File for Storable use
880
881 Memoize::Storable
882 Store Memoized data in Storable database
883
884 Module::CoreList
885 What modules shipped with versions of perl
886
887 Module::CoreList::Utils
888 What utilities shipped with versions of perl
889
890 Module::Load
891 Runtime require of both modules and files
892
893 Module::Load::Conditional
894 Looking up module information / loading at runtime
895
896 Module::Loaded
897 Mark modules as loaded or unloaded
898
899 Module::Metadata
900 Gather package and POD information from perl module files
901
902 NDBM_File Tied access to ndbm files
903
904 NEXT Provide a pseudo-class NEXT (et al) that allows method
905 redispatch
906
907 Net::Cmd Network Command class (as used by FTP, SMTP etc)
908
909 Net::Config Local configuration data for libnet
910
911 Net::Domain Attempt to evaluate the current host's internet name and
912 domain
913
914 Net::FTP FTP Client class
915
916 Net::FTP::dataconn
917 FTP Client data connection class
918
919 Net::NNTP NNTP Client class
920
921 Net::Netrc OO interface to users netrc file
922
923 Net::POP3 Post Office Protocol 3 Client class (RFC1939)
924
925 Net::Ping Check a remote host for reachability
926
927 Net::SMTP Simple Mail Transfer Protocol Client
928
929 Net::Time Time and daytime network client interface
930
931 Net::hostent
932 By-name interface to Perl's built-in gethost*() functions
933
934 Net::libnetFAQ
935 Libnet Frequently Asked Questions
936
937 Net::netent By-name interface to Perl's built-in getnet*() functions
938
939 Net::protoent
940 By-name interface to Perl's built-in getproto*() functions
941
942 Net::servent
943 By-name interface to Perl's built-in getserv*() functions
944
945 O Generic interface to Perl Compiler backends
946
947 ODBM_File Tied access to odbm files
948
949 Opcode Disable named opcodes when compiling perl code
950
951 POSIX Perl interface to IEEE Std 1003.1
952
953 Params::Check
954 A generic input parsing/checking mechanism.
955
956 Parse::CPAN::Meta
957 Parse META.yml and META.json CPAN metadata files
958
959 Perl::OSType
960 Map Perl operating system names to generic types
961
962 PerlIO On demand loader for PerlIO layers and root of PerlIO::*
963 name space
964
965 PerlIO::encoding
966 Encoding layer
967
968 PerlIO::mmap
969 Memory mapped IO
970
971 PerlIO::scalar
972 In-memory IO, scalar IO
973
974 PerlIO::via Helper class for PerlIO layers implemented in perl
975
976 PerlIO::via::QuotedPrint
977 PerlIO layer for quoted-printable strings
978
979 Pod::Checker
980 Check pod documents for syntax errors
981
982 Pod::Escapes
983 For resolving Pod E<...> sequences
984
985 Pod::Find Find POD documents in directory trees
986
987 Pod::Functions
988 Group Perl's functions a la perlfunc.pod
989
990 Pod::Html Module to convert pod files to HTML
991
992 Pod::InputObjects
993 Objects representing POD input paragraphs, commands, etc.
994
995 Pod::Man Convert POD data to formatted *roff input
996
997 Pod::ParseLink
998 Parse an L<> formatting code in POD text
999
1000 Pod::ParseUtils
1001 Helpers for POD parsing and conversion
1002
1003 Pod::Parser Base class for creating POD filters and translators
1004
1005 Pod::Perldoc
1006 Look up Perl documentation in Pod format.
1007
1008 Pod::Perldoc::BaseTo
1009 Base for Pod::Perldoc formatters
1010
1011 Pod::Perldoc::GetOptsOO
1012 Customized option parser for Pod::Perldoc
1013
1014 Pod::Perldoc::ToANSI
1015 Render Pod with ANSI color escapes
1016
1017 Pod::Perldoc::ToChecker
1018 Let Perldoc check Pod for errors
1019
1020 Pod::Perldoc::ToMan
1021 Let Perldoc render Pod as man pages
1022
1023 Pod::Perldoc::ToNroff
1024 Let Perldoc convert Pod to nroff
1025
1026 Pod::Perldoc::ToPod
1027 Let Perldoc render Pod as ... Pod!
1028
1029 Pod::Perldoc::ToRtf
1030 Let Perldoc render Pod as RTF
1031
1032 Pod::Perldoc::ToTerm
1033 Render Pod with terminal escapes
1034
1035 Pod::Perldoc::ToText
1036 Let Perldoc render Pod as plaintext
1037
1038 Pod::Perldoc::ToTk
1039 Let Perldoc use Tk::Pod to render Pod
1040
1041 Pod::Perldoc::ToXml
1042 Let Perldoc render Pod as XML
1043
1044 Pod::PlainText
1045 Convert POD data to formatted ASCII text
1046
1047 Pod::Select Extract selected sections of POD from input
1048
1049 Pod::Simple Framework for parsing Pod
1050
1051 Pod::Simple::Checker
1052 Check the Pod syntax of a document
1053
1054 Pod::Simple::Debug
1055 Put Pod::Simple into trace/debug mode
1056
1057 Pod::Simple::DumpAsText
1058 Dump Pod-parsing events as text
1059
1060 Pod::Simple::DumpAsXML
1061 Turn Pod into XML
1062
1063 Pod::Simple::HTML
1064 Convert Pod to HTML
1065
1066 Pod::Simple::HTMLBatch
1067 Convert several Pod files to several HTML files
1068
1069 Pod::Simple::LinkSection
1070 Represent "section" attributes of L codes
1071
1072 Pod::Simple::Methody
1073 Turn Pod::Simple events into method calls
1074
1075 Pod::Simple::PullParser
1076 A pull-parser interface to parsing Pod
1077
1078 Pod::Simple::PullParserEndToken
1079 End-tokens from Pod::Simple::PullParser
1080
1081 Pod::Simple::PullParserStartToken
1082 Start-tokens from Pod::Simple::PullParser
1083
1084 Pod::Simple::PullParserTextToken
1085 Text-tokens from Pod::Simple::PullParser
1086
1087 Pod::Simple::PullParserToken
1088 Tokens from Pod::Simple::PullParser
1089
1090 Pod::Simple::RTF
1091 Format Pod as RTF
1092
1093 Pod::Simple::Search
1094 Find POD documents in directory trees
1095
1096 Pod::Simple::SimpleTree
1097 Parse Pod into a simple parse tree
1098
1099 Pod::Simple::Subclassing
1100 Write a formatter as a Pod::Simple subclass
1101
1102 Pod::Simple::Text
1103 Format Pod as plaintext
1104
1105 Pod::Simple::TextContent
1106 Get the text content of Pod
1107
1108 Pod::Simple::XHTML
1109 Format Pod as validating XHTML
1110
1111 Pod::Simple::XMLOutStream
1112 Turn Pod into XML
1113
1114 Pod::Text Convert POD data to formatted text
1115
1116 Pod::Text::Color
1117 Convert POD data to formatted color ASCII text
1118
1119 Pod::Text::Overstrike
1120 Convert POD data to formatted overstrike text
1121
1122 Pod::Text::Termcap
1123 Convert POD data to ASCII text with format escapes
1124
1125 Pod::Usage Print a usage message from embedded pod documentation
1126
1127 SDBM_File Tied access to sdbm files
1128
1129 Safe Compile and execute code in restricted compartments
1130
1131 Scalar::Util
1132 A selection of general-utility scalar subroutines
1133
1134 Search::Dict
1135 Look - search for key in dictionary file
1136
1137 SelectSaver Save and restore selected file handle
1138
1139 SelfLoader Load functions only on demand
1140
1141 Storable Persistence for Perl data structures
1142
1143 Sub::Util A selection of utility subroutines for subs and CODE
1144 references
1145
1146 Symbol Manipulate Perl symbols and their names
1147
1148 Sys::Hostname
1149 Try every conceivable way to get hostname
1150
1151 Sys::Syslog Perl interface to the UNIX syslog(3) calls
1152
1153 Sys::Syslog::Win32
1154 Win32 support for Sys::Syslog
1155
1156 TAP::Base Base class that provides common functionality to
1157 TAP::Parser
1158
1159 TAP::Formatter::Base
1160 Base class for harness output delegates
1161
1162 TAP::Formatter::Color
1163 Run Perl test scripts with color
1164
1165 TAP::Formatter::Console
1166 Harness output delegate for default console output
1167
1168 TAP::Formatter::Console::ParallelSession
1169 Harness output delegate for parallel console output
1170
1171 TAP::Formatter::Console::Session
1172 Harness output delegate for default console output
1173
1174 TAP::Formatter::File
1175 Harness output delegate for file output
1176
1177 TAP::Formatter::File::Session
1178 Harness output delegate for file output
1179
1180 TAP::Formatter::Session
1181 Abstract base class for harness output delegate
1182
1183 TAP::Harness
1184 Run test scripts with statistics
1185
1186 TAP::Harness::Env
1187 Parsing harness related environmental variables where
1188 appropriate
1189
1190 TAP::Object Base class that provides common functionality to all
1191 "TAP::*" modules
1192
1193 TAP::Parser Parse TAP output
1194
1195 TAP::Parser::Aggregator
1196 Aggregate TAP::Parser results
1197
1198 TAP::Parser::Grammar
1199 A grammar for the Test Anything Protocol.
1200
1201 TAP::Parser::Iterator
1202 Base class for TAP source iterators
1203
1204 TAP::Parser::Iterator::Array
1205 Iterator for array-based TAP sources
1206
1207 TAP::Parser::Iterator::Process
1208 Iterator for process-based TAP sources
1209
1210 TAP::Parser::Iterator::Stream
1211 Iterator for filehandle-based TAP sources
1212
1213 TAP::Parser::IteratorFactory
1214 Figures out which SourceHandler objects to use for a given
1215 Source
1216
1217 TAP::Parser::Multiplexer
1218 Multiplex multiple TAP::Parsers
1219
1220 TAP::Parser::Result
1221 Base class for TAP::Parser output objects
1222
1223 TAP::Parser::Result::Bailout
1224 Bailout result token.
1225
1226 TAP::Parser::Result::Comment
1227 Comment result token.
1228
1229 TAP::Parser::Result::Plan
1230 Plan result token.
1231
1232 TAP::Parser::Result::Pragma
1233 TAP pragma token.
1234
1235 TAP::Parser::Result::Test
1236 Test result token.
1237
1238 TAP::Parser::Result::Unknown
1239 Unknown result token.
1240
1241 TAP::Parser::Result::Version
1242 TAP syntax version token.
1243
1244 TAP::Parser::Result::YAML
1245 YAML result token.
1246
1247 TAP::Parser::ResultFactory
1248 Factory for creating TAP::Parser output objects
1249
1250 TAP::Parser::Scheduler
1251 Schedule tests during parallel testing
1252
1253 TAP::Parser::Scheduler::Job
1254 A single testing job.
1255
1256 TAP::Parser::Scheduler::Spinner
1257 A no-op job.
1258
1259 TAP::Parser::Source
1260 A TAP source & meta data about it
1261
1262 TAP::Parser::SourceHandler
1263 Base class for different TAP source handlers
1264
1265 TAP::Parser::SourceHandler::Executable
1266 Stream output from an executable TAP source
1267
1268 TAP::Parser::SourceHandler::File
1269 Stream TAP from a text file.
1270
1271 TAP::Parser::SourceHandler::Handle
1272 Stream TAP from an IO::Handle or a GLOB.
1273
1274 TAP::Parser::SourceHandler::Perl
1275 Stream TAP from a Perl executable
1276
1277 TAP::Parser::SourceHandler::RawTAP
1278 Stream output from raw TAP in a scalar/array ref.
1279
1280 TAP::Parser::YAMLish::Reader
1281 Read YAMLish data from iterator
1282
1283 TAP::Parser::YAMLish::Writer
1284 Write YAMLish data
1285
1286 Term::ANSIColor
1287 Color screen output using ANSI escape sequences
1288
1289 Term::Cap Perl termcap interface
1290
1291 Term::Complete
1292 Perl word completion module
1293
1294 Term::ReadLine
1295 Perl interface to various "readline" packages.
1296
1297 Test Provides a simple framework for writing test scripts
1298
1299 Test2 Framework for writing test tools that all work together.
1300
1301 Test2::API Primary interface for writing Test2 based testing tools.
1302
1303 Test2::API::Breakage
1304 What breaks at what version
1305
1306 Test2::API::Context
1307 Object to represent a testing context.
1308
1309 Test2::API::Instance
1310 Object used by Test2::API under the hood
1311
1312 Test2::API::Stack
1313 Object to manage a stack of Test2::Hub
1314
1315 Test2::Event
1316 Base class for events
1317
1318 Test2::Event::Bail
1319 Bailout!
1320
1321 Test2::Event::Diag
1322 Diag event type
1323
1324 Test2::Event::Encoding
1325 Set the encoding for the output stream
1326
1327 Test2::Event::Exception
1328 Exception event
1329
1330 Test2::Event::Fail
1331 Event for a simple failed assertion
1332
1333 Test2::Event::Generic
1334 Generic event type.
1335
1336 Test2::Event::Note
1337 Note event type
1338
1339 Test2::Event::Ok
1340 Ok event type
1341
1342 Test2::Event::Pass
1343 Event for a simple passing assertion
1344
1345 Test2::Event::Plan
1346 The event of a plan
1347
1348 Test2::Event::Skip
1349 Skip event type
1350
1351 Test2::Event::Subtest
1352 Event for subtest types
1353
1354 Test2::Event::TAP::Version
1355 Event for TAP version.
1356
1357 Test2::Event::V2
1358 Second generation event.
1359
1360 Test2::Event::Waiting
1361 Tell all procs/threads it is time to be done
1362
1363 Test2::EventFacet
1364 Base class for all event facets.
1365
1366 Test2::EventFacet::About
1367 Facet with event details.
1368
1369 Test2::EventFacet::Amnesty
1370 Facet for assertion amnesty.
1371
1372 Test2::EventFacet::Assert
1373 Facet representing an assertion.
1374
1375 Test2::EventFacet::Control
1376 Facet for hub actions and behaviors.
1377
1378 Test2::EventFacet::Error
1379 Facet for errors that need to be shown.
1380
1381 Test2::EventFacet::Hub
1382 Facet for the hubs an event passes through.
1383
1384 Test2::EventFacet::Info
1385 Facet for information a developer might care about.
1386
1387 Test2::EventFacet::Info::Table
1388 Intermediary representation of a table.
1389
1390 Test2::EventFacet::Meta
1391 Facet for meta-data
1392
1393 Test2::EventFacet::Parent
1394 Facet for events contains other events
1395
1396 Test2::EventFacet::Plan
1397 Facet for setting the plan
1398
1399 Test2::EventFacet::Render
1400 Facet that dictates how to render an event.
1401
1402 Test2::EventFacet::Trace
1403 Debug information for events
1404
1405 Test2::Formatter
1406 Namespace for formatters.
1407
1408 Test2::Formatter::TAP
1409 Standard TAP formatter
1410
1411 Test2::Hub The conduit through which all events flow.
1412
1413 Test2::Hub::Interceptor
1414 Hub used by interceptor to grab results.
1415
1416 Test2::Hub::Interceptor::Terminator
1417 Exception class used by
1418
1419 Test2::Hub::Subtest
1420 Hub used by subtests
1421
1422 Test2::IPC Turn on IPC for threading or forking support.
1423
1424 Test2::IPC::Driver
1425 Base class for Test2 IPC drivers.
1426
1427 Test2::IPC::Driver::Files
1428 Temp dir + Files concurrency model.
1429
1430 Test2::Tools::Tiny
1431 Tiny set of tools for unfortunate souls who cannot use
1432
1433 Test2::Transition
1434 Transition notes when upgrading to Test2
1435
1436 Test2::Util Tools used by Test2 and friends.
1437
1438 Test2::Util::ExternalMeta
1439 Allow third party tools to safely attach meta-data
1440
1441 Test2::Util::Facets2Legacy
1442 Convert facet data to the legacy event API.
1443
1444 Test2::Util::HashBase
1445 Build hash based classes.
1446
1447 Test2::Util::Trace
1448 Legacy wrapper fro Test2::EventFacet::Trace.
1449
1450 Test::Builder
1451 Backend for building test libraries
1452
1453 Test::Builder::Formatter
1454 Test::Builder subclass of Test2::Formatter::TAP
1455
1456 Test::Builder::IO::Scalar
1457 A copy of IO::Scalar for Test::Builder
1458
1459 Test::Builder::Module
1460 Base class for test modules
1461
1462 Test::Builder::Tester
1463 Test testsuites that have been built with
1464
1465 Test::Builder::Tester::Color
1466 Turn on colour in Test::Builder::Tester
1467
1468 Test::Builder::TodoDiag
1469 Test::Builder subclass of Test2::Event::Diag
1470
1471 Test::Harness
1472 Run Perl standard test scripts with statistics
1473
1474 Test::Harness::Beyond
1475 Beyond make test
1476
1477 Test::More Yet another framework for writing test scripts
1478
1479 Test::Simple
1480 Basic utilities for writing tests.
1481
1482 Test::Tester
1483 Ease testing test modules built with Test::Builder
1484
1485 Test::Tester::Capture
1486 Help testing test modules built with Test::Builder
1487
1488 Test::Tester::CaptureRunner
1489 Help testing test modules built with Test::Builder
1490
1491 Test::Tutorial
1492 A tutorial about writing really basic tests
1493
1494 Test::use::ok
1495 Alternative to Test::More::use_ok
1496
1497 Text::Abbrev
1498 Abbrev - create an abbreviation table from a list
1499
1500 Text::Balanced
1501 Extract delimited text sequences from strings.
1502
1503 Text::ParseWords
1504 Parse text into an array of tokens or array of arrays
1505
1506 Text::Tabs Expand and unexpand tabs like unix expand(1) and
1507 unexpand(1)
1508
1509 Text::Wrap Line wrapping to form simple paragraphs
1510
1511 Thread Manipulate threads in Perl (for old code only)
1512
1513 Thread::Queue
1514 Thread-safe queues
1515
1516 Thread::Semaphore
1517 Thread-safe semaphores
1518
1519 Tie::Array Base class for tied arrays
1520
1521 Tie::File Access the lines of a disk file via a Perl array
1522
1523 Tie::Handle Base class definitions for tied handles
1524
1525 Tie::Hash Base class definitions for tied hashes
1526
1527 Tie::Hash::NamedCapture
1528 Named regexp capture buffers
1529
1530 Tie::Memoize
1531 Add data to hash when needed
1532
1533 Tie::RefHash
1534 Use references as hash keys
1535
1536 Tie::Scalar Base class definitions for tied scalars
1537
1538 Tie::StdHandle
1539 Base class definitions for tied handles
1540
1541 Tie::SubstrHash
1542 Fixed-table-size, fixed-key-length hashing
1543
1544 Time::HiRes High resolution alarm, sleep, gettimeofday, interval timers
1545
1546 Time::Local Efficiently compute time from local and GMT time
1547
1548 Time::Piece Object Oriented time objects
1549
1550 Time::Seconds
1551 A simple API to convert seconds to other date values
1552
1553 Time::gmtime
1554 By-name interface to Perl's built-in gmtime() function
1555
1556 Time::localtime
1557 By-name interface to Perl's built-in localtime() function
1558
1559 Time::tm Internal object used by Time::gmtime and Time::localtime
1560
1561 UNIVERSAL Base class for ALL classes (blessed references)
1562
1563 Unicode::Collate
1564 Unicode Collation Algorithm
1565
1566 Unicode::Collate::CJK::Big5
1567 Weighting CJK Unified Ideographs
1568
1569 Unicode::Collate::CJK::GB2312
1570 Weighting CJK Unified Ideographs
1571
1572 Unicode::Collate::CJK::JISX0208
1573 Weighting JIS KANJI for Unicode::Collate
1574
1575 Unicode::Collate::CJK::Korean
1576 Weighting CJK Unified Ideographs
1577
1578 Unicode::Collate::CJK::Pinyin
1579 Weighting CJK Unified Ideographs
1580
1581 Unicode::Collate::CJK::Stroke
1582 Weighting CJK Unified Ideographs
1583
1584 Unicode::Collate::CJK::Zhuyin
1585 Weighting CJK Unified Ideographs
1586
1587 Unicode::Collate::Locale
1588 Linguistic tailoring for DUCET via Unicode::Collate
1589
1590 Unicode::Normalize
1591 Unicode Normalization Forms
1592
1593 Unicode::UCD
1594 Unicode character database
1595
1596 User::grent By-name interface to Perl's built-in getgr*() functions
1597
1598 User::pwent By-name interface to Perl's built-in getpw*() functions
1599
1600 VMS::DCLsym Perl extension to manipulate DCL symbols
1601
1602 VMS::Filespec
1603 Convert between VMS and Unix file specification syntax
1604
1605 VMS::Stdio Standard I/O functions via VMS extensions
1606
1607 Win32 Interfaces to some Win32 API Functions
1608
1609 Win32API::File
1610 Low-level access to Win32 system API calls for files/dirs.
1611
1612 Win32CORE Win32 CORE function stubs
1613
1614 XS::APItest Test the perl C API
1615
1616 XS::Typemap Module to test the XS typemaps distributed with perl
1617
1618 XSLoader Dynamically load C libraries into Perl code
1619
1620 autodie::Scope::Guard
1621 Wrapper class for calling subs at end of scope
1622
1623 autodie::Scope::GuardStack
1624 Hook stack for managing scopes via %^H
1625
1626 autodie::Util
1627 Internal Utility subroutines for autodie and Fatal
1628
1629 version::Internals
1630 Perl extension for Version Objects
1631
1632 To find out all modules installed on your system, including those
1633 without documentation or outside the standard release, just use the
1634 following command (under the default win32 shell, double quotes should
1635 be used instead of single quotes).
1636
1637 % perl -MFile::Find=find -MFile::Spec::Functions -Tlwe \
1638 'find { wanted => sub { print canonpath $_ if /\.pm\z/ },
1639 no_chdir => 1 }, @INC'
1640
1641 (The -T is here to prevent '.' from being listed in @INC.) They should
1642 all have their own documentation installed and accessible via your
1643 system man(1) command. If you do not have a find program, you can use
1644 the Perl find2perl program instead, which generates Perl code as output
1645 you can run through perl. If you have a man program but it doesn't
1646 find your modules, you'll have to fix your manpath. See perl for
1647 details. If you have no system man command, you might try the perldoc
1648 program.
1649
1650 Note also that the command "perldoc perllocal" gives you a (possibly
1651 incomplete) list of the modules that have been further installed on
1652 your system. (The perllocal.pod file is updated by the standard
1653 MakeMaker install process.)
1654
1655 Extension Modules
1656 Extension modules are written in C (or a mix of Perl and C). They are
1657 usually dynamically loaded into Perl if and when you need them, but may
1658 also be linked in statically. Supported extension modules include
1659 Socket, Fcntl, and POSIX.
1660
1661 Many popular C extension modules do not come bundled (at least, not
1662 completely) due to their sizes, volatility, or simply lack of time for
1663 adequate testing and configuration across the multitude of platforms on
1664 which Perl was beta-tested. You are encouraged to look for them on
1665 CPAN (described below), or using web search engines like Google or
1666 DuckDuckGo.
1667
1669 CPAN stands for Comprehensive Perl Archive Network; it's a globally
1670 replicated trove of Perl materials, including documentation, style
1671 guides, tricks and traps, alternate ports to non-Unix systems and
1672 occasional binary distributions for these. Search engines for CPAN
1673 can be found at http://www.cpan.org/
1674
1675 Most importantly, CPAN includes around a thousand unbundled modules,
1676 some of which require a C compiler to build. Major categories of
1677 modules are:
1678
1679 · Language Extensions and Documentation Tools
1680
1681 · Development Support
1682
1683 · Operating System Interfaces
1684
1685 · Networking, Device Control (modems) and InterProcess Communication
1686
1687 · Data Types and Data Type Utilities
1688
1689 · Database Interfaces
1690
1691 · User Interfaces
1692
1693 · Interfaces to / Emulations of Other Programming Languages
1694
1695 · File Names, File Systems and File Locking (see also File Handles)
1696
1697 · String Processing, Language Text Processing, Parsing, and Searching
1698
1699 · Option, Argument, Parameter, and Configuration File Processing
1700
1701 · Internationalization and Locale
1702
1703 · Authentication, Security, and Encryption
1704
1705 · World Wide Web, HTML, HTTP, CGI, MIME
1706
1707 · Server and Daemon Utilities
1708
1709 · Archiving and Compression
1710
1711 · Images, Pixmap and Bitmap Manipulation, Drawing, and Graphing
1712
1713 · Mail and Usenet News
1714
1715 · Control Flow Utilities (callbacks and exceptions etc)
1716
1717 · File Handle and Input/Output Stream Utilities
1718
1719 · Miscellaneous Modules
1720
1721 The list of the registered CPAN sites follows. Please note that the
1722 sorting order is alphabetical on fields:
1723
1724 Continent
1725 |
1726 |-->Country
1727 |
1728 |-->[state/province]
1729 |
1730 |-->ftp
1731 |
1732 |-->[http]
1733
1734 and thus the North American servers happen to be listed between the
1735 European and the South American sites.
1736
1737 Registered CPAN sites
1738
1739 Africa
1740 South Africa
1741 http://mirror.is.co.za/pub/cpan/
1742 ftp://ftp.is.co.za/pub/cpan/
1743 http://cpan.mirror.ac.za/
1744 ftp://cpan.mirror.ac.za/
1745 http://cpan.saix.net/
1746 ftp://ftp.saix.net/pub/CPAN/
1747 http://ftp.wa.co.za/pub/CPAN/
1748 ftp://ftp.wa.co.za/pub/CPAN/
1749
1750 Uganda
1751 http://mirror.ucu.ac.ug/cpan/
1752
1753 Zimbabwe
1754 http://mirror.zol.co.zw/CPAN/
1755 ftp://mirror.zol.co.zw/CPAN/
1756
1757 Asia
1758 Bangladesh
1759 http://mirror.dhakacom.com/CPAN/
1760 ftp://mirror.dhakacom.com/CPAN/
1761
1762 China
1763 http://cpan.communilink.net/
1764 http://ftp.cuhk.edu.hk/pub/packages/perl/CPAN/
1765 ftp://ftp.cuhk.edu.hk/pub/packages/perl/CPAN/
1766 http://mirrors.hust.edu.cn/CPAN/
1767 http://mirrors.neusoft.edu.cn/cpan/
1768 http://mirror.lzu.edu.cn/CPAN/
1769 http://mirrors.163.com/cpan/
1770 http://mirrors.sohu.com/CPAN/
1771 http://mirrors.ustc.edu.cn/CPAN/
1772 ftp://mirrors.ustc.edu.cn/CPAN/
1773 http://mirrors.xmu.edu.cn/CPAN/
1774 ftp://mirrors.xmu.edu.cn/CPAN/
1775 http://mirrors.zju.edu.cn/CPAN/
1776
1777 India
1778 http://cpan.excellmedia.net/
1779 http://perlmirror.indialinks.com/
1780
1781 Indonesia
1782 http://kambing.ui.ac.id/cpan/
1783 http://cpan.pesat.net.id/
1784 http://mirror.poliwangi.ac.id/CPAN/
1785 http://kartolo.sby.datautama.net.id/CPAN/
1786 http://mirror.wanxp.id/cpan/
1787
1788 Iran
1789 http://mirror.yazd.ac.ir/cpan/
1790
1791 Israel
1792 http://biocourse.weizmann.ac.il/CPAN/
1793
1794 Japan
1795 http://ftp.jaist.ac.jp/pub/CPAN/
1796 ftp://ftp.jaist.ac.jp/pub/CPAN/
1797 http://mirror.jre655.com/CPAN/
1798 ftp://mirror.jre655.com/CPAN/
1799 ftp://ftp.kddilabs.jp/CPAN/
1800 http://ftp.nara.wide.ad.jp/pub/CPAN/
1801 ftp://ftp.nara.wide.ad.jp/pub/CPAN/
1802 http://ftp.riken.jp/lang/CPAN/
1803 ftp://ftp.riken.jp/lang/CPAN/
1804 ftp://ftp.u-aizu.ac.jp/pub/CPAN/
1805 http://ftp.yz.yamagata-u.ac.jp/pub/lang/cpan/
1806 ftp://ftp.yz.yamagata-u.ac.jp/pub/lang/cpan/
1807
1808 Kazakhstan
1809 http://mirror.neolabs.kz/CPAN/
1810 ftp://mirror.neolabs.kz/CPAN/
1811
1812 Philippines
1813 http://mirror.pregi.net/CPAN/
1814 ftp://mirror.pregi.net/CPAN/
1815 http://mirror.rise.ph/cpan/
1816 ftp://mirror.rise.ph/cpan/
1817
1818 Qatar
1819 http://mirror.qnren.qa/CPAN/
1820 ftp://mirror.qnren.qa/CPAN/
1821
1822 Republic of Korea
1823 http://cpan.mirror.cdnetworks.com/
1824 ftp://cpan.mirror.cdnetworks.com/CPAN/
1825 http://ftp.kaist.ac.kr/pub/CPAN/
1826 ftp://ftp.kaist.ac.kr/CPAN/
1827 http://ftp.kr.freebsd.org/pub/CPAN/
1828 ftp://ftp.kr.freebsd.org/pub/CPAN/
1829 http://mirror.navercorp.com/CPAN/
1830 http://ftp.neowiz.com/CPAN/
1831 ftp://ftp.neowiz.com/CPAN/
1832
1833 Singapore
1834 http://cpan.mirror.choon.net/
1835 http://mirror.0x.sg/CPAN/
1836 ftp://mirror.0x.sg/CPAN/
1837
1838 Taiwan
1839 http://cpan.cdpa.nsysu.edu.tw/Unix/Lang/CPAN/
1840 ftp://cpan.cdpa.nsysu.edu.tw/Unix/Lang/CPAN/
1841 http://cpan.stu.edu.tw/
1842 ftp://ftp.stu.edu.tw/CPAN/
1843 http://ftp.yzu.edu.tw/CPAN/
1844 ftp://ftp.yzu.edu.tw/CPAN/
1845 http://cpan.nctu.edu.tw/
1846 ftp://cpan.nctu.edu.tw/
1847 http://ftp.ubuntu-tw.org/mirror/CPAN/
1848 ftp://ftp.ubuntu-tw.org/mirror/CPAN/
1849
1850 Turkey
1851 http://cpan.ulak.net.tr/
1852 ftp://ftp.ulak.net.tr/pub/perl/CPAN/
1853 http://mirror.vit.com.tr/mirror/CPAN/
1854 ftp://mirror.vit.com.tr/CPAN/
1855
1856 Viet Nam
1857 http://mirrors.digipower.vn/CPAN/
1858 http://mirror.downloadvn.com/cpan/
1859 http://mirrors.vinahost.vn/CPAN/
1860
1861 Europe
1862 Austria
1863 http://cpan.inode.at/
1864 ftp://cpan.inode.at/
1865 http://mirror.easyname.at/cpan/
1866 ftp://mirror.easyname.at/cpan/
1867 http://gd.tuwien.ac.at/languages/perl/CPAN/
1868 ftp://gd.tuwien.ac.at/pub/CPAN/
1869
1870 Belarus
1871 http://ftp.byfly.by/pub/CPAN/
1872 ftp://ftp.byfly.by/pub/CPAN/
1873 http://mirror.datacenter.by/pub/CPAN/
1874 ftp://mirror.datacenter.by/pub/CPAN/
1875
1876 Belgium
1877 http://ftp.belnet.be/ftp.cpan.org/
1878 ftp://ftp.belnet.be/mirror/ftp.cpan.org/
1879 http://cpan.cu.be/
1880 http://lib.ugent.be/CPAN/
1881 http://cpan.weepeetelecom.be/
1882
1883 Bosnia and Herzegovina
1884 http://cpan.mirror.ba/
1885 ftp://ftp.mirror.ba/CPAN/
1886
1887 Bulgaria
1888 http://mirrors.neterra.net/CPAN/
1889 ftp://mirrors.neterra.net/CPAN/
1890 http://mirrors.netix.net/CPAN/
1891 ftp://mirrors.netix.net/CPAN/
1892
1893 Croatia
1894 http://ftp.carnet.hr/pub/CPAN/
1895 ftp://ftp.carnet.hr/pub/CPAN/
1896
1897 Czech Republic
1898 http://mirror.dkm.cz/cpan/
1899 ftp://mirror.dkm.cz/cpan/
1900 ftp://ftp.fi.muni.cz/pub/CPAN/
1901 http://mirrors.nic.cz/CPAN/
1902 ftp://mirrors.nic.cz/pub/CPAN/
1903 http://cpan.mirror.vutbr.cz/
1904 ftp://mirror.vutbr.cz/cpan/
1905
1906 Denmark
1907 http://www.cpan.dk/
1908 http://mirrors.dotsrc.org/cpan/
1909 ftp://mirrors.dotsrc.org/cpan/
1910
1911 Finland
1912 ftp://ftp.funet.fi/pub/languages/perl/CPAN/
1913
1914 France
1915 http://ftp.ciril.fr/pub/cpan/
1916 ftp://ftp.ciril.fr/pub/cpan/
1917 http://distrib-coffee.ipsl.jussieu.fr/pub/mirrors/cpan/
1918 ftp://distrib-coffee.ipsl.jussieu.fr/pub/mirrors/cpan/
1919 http://ftp.lip6.fr/pub/perl/CPAN/
1920 ftp://ftp.lip6.fr/pub/perl/CPAN/
1921 http://mirror.ibcp.fr/pub/CPAN/
1922 ftp://ftp.oleane.net/pub/CPAN/
1923 http://cpan.mirrors.ovh.net/ftp.cpan.org/
1924 ftp://cpan.mirrors.ovh.net/ftp.cpan.org/
1925 http://cpan.enstimac.fr/
1926
1927 Germany
1928 http://mirror.23media.de/cpan/
1929 ftp://mirror.23media.de/cpan/
1930 http://artfiles.org/cpan.org/
1931 ftp://artfiles.org/cpan.org/
1932 http://mirror.bibleonline.ru/cpan/
1933 http://mirror.checkdomain.de/CPAN/
1934 ftp://mirror.checkdomain.de/CPAN/
1935 http://cpan.noris.de/
1936 http://mirror.de.leaseweb.net/CPAN/
1937 ftp://mirror.de.leaseweb.net/CPAN/
1938 http://cpan.mirror.euserv.net/
1939 ftp://mirror.euserv.net/cpan/
1940 http://ftp-stud.hs-esslingen.de/pub/Mirrors/CPAN/
1941 ftp://mirror.fraunhofer.de/CPAN/
1942 ftp://ftp.freenet.de/pub/ftp.cpan.org/pub/CPAN/
1943 http://ftp.hosteurope.de/pub/CPAN/
1944 ftp://ftp.hosteurope.de/pub/CPAN/
1945 ftp://ftp.fu-berlin.de/unix/languages/perl/
1946 http://ftp.gwdg.de/pub/languages/perl/CPAN/
1947 ftp://ftp.gwdg.de/pub/languages/perl/CPAN/
1948 http://ftp.hawo.stw.uni-erlangen.de/CPAN/
1949 ftp://ftp.hawo.stw.uni-erlangen.de/CPAN/
1950 http://cpan.mirror.iphh.net/
1951 ftp://cpan.mirror.iphh.net/pub/CPAN/
1952 ftp://ftp.mpi-inf.mpg.de/pub/perl/CPAN/
1953 http://cpan.netbet.org/
1954 http://mirror.netcologne.de/cpan/
1955 ftp://mirror.netcologne.de/cpan/
1956 ftp://mirror.petamem.com/CPAN/
1957 http://www.planet-elektronik.de/CPAN/
1958 http://ftp.halifax.rwth-aachen.de/cpan/
1959 ftp://ftp.halifax.rwth-aachen.de/cpan/
1960 http://mirror.softaculous.com/cpan/
1961 http://ftp.u-tx.net/CPAN/
1962 ftp://ftp.u-tx.net/CPAN/
1963 http://mirror.reismil.ch/CPAN/
1964
1965 Greece
1966 http://cpan.cc.uoc.gr/mirrors/CPAN/
1967 ftp://ftp.cc.uoc.gr/mirrors/CPAN/
1968 http://ftp.ntua.gr/pub/lang/perl/
1969 ftp://ftp.ntua.gr/pub/lang/perl/
1970
1971 Hungary
1972 http://mirror.met.hu/CPAN/
1973
1974 Ireland
1975 http://ftp.heanet.ie/mirrors/ftp.perl.org/pub/CPAN/
1976 ftp://ftp.heanet.ie/mirrors/ftp.perl.org/pub/CPAN/
1977
1978 Italy
1979 http://bo.mirror.garr.it/mirrors/CPAN/
1980 ftp://ftp.eutelia.it/CPAN_Mirror/
1981 http://cpan.panu.it/
1982 ftp://ftp.panu.it/pub/mirrors/perl/CPAN/
1983 http://cpan.muzzy.it/
1984
1985 Latvia
1986 http://kvin.lv/pub/CPAN/
1987
1988 Lithuania
1989 http://ftp.litnet.lt/pub/CPAN/
1990 ftp://ftp.litnet.lt/pub/CPAN/
1991
1992 Moldova
1993 http://mirror.as43289.net/pub/CPAN/
1994 ftp://mirror.as43289.net/pub/CPAN/
1995
1996 Netherlands
1997 http://cpan.cs.uu.nl/
1998 ftp://ftp.cs.uu.nl/pub/CPAN/
1999 http://mirror.nl.leaseweb.net/CPAN/
2000 ftp://mirror.nl.leaseweb.net/CPAN/
2001 http://ftp.nluug.nl/languages/perl/CPAN/
2002 ftp://ftp.nluug.nl/pub/languages/perl/CPAN/
2003 http://mirror.transip.net/CPAN/
2004 ftp://mirror.transip.net/CPAN/
2005 http://cpan.mirror.triple-it.nl/
2006 http://ftp.tudelft.nl/cpan/
2007 ftp://ftp.tudelft.nl/pub/CPAN/
2008 ftp://download.xs4all.nl/pub/mirror/CPAN/
2009
2010 Norway
2011 http://cpan.uib.no/
2012 ftp://cpan.uib.no/pub/CPAN/
2013 ftp://ftp.uninett.no/pub/languages/perl/CPAN/
2014 http://cpan.vianett.no/
2015
2016 Poland
2017 http://ftp.agh.edu.pl/CPAN/
2018 ftp://ftp.agh.edu.pl/CPAN/
2019 http://ftp.piotrkosoft.net/pub/mirrors/CPAN/
2020 ftp://ftp.piotrkosoft.net/pub/mirrors/CPAN/
2021 ftp://ftp.ps.pl/pub/CPAN/
2022 http://sunsite.icm.edu.pl/pub/CPAN/
2023 ftp://sunsite.icm.edu.pl/pub/CPAN/
2024
2025 Portugal
2026 http://cpan.dcc.fc.up.pt/
2027 http://mirrors.fe.up.pt/pub/CPAN/
2028 http://cpan.perl-hackers.net/
2029 http://cpan.perl.pt/
2030
2031 Romania
2032 http://mirrors.hostingromania.ro/cpan.org/
2033 ftp://ftp.lug.ro/CPAN/
2034 http://mirrors.m247.ro/CPAN/
2035 http://mirrors.evowise.com/CPAN/
2036 http://mirrors.teentelecom.net/CPAN/
2037 ftp://mirrors.teentelecom.net/CPAN/
2038 http://mirrors.xservers.ro/CPAN/
2039
2040 Russian Federation
2041 ftp://ftp.aha.ru/CPAN/
2042 http://cpan.rinet.ru/
2043 ftp://cpan.rinet.ru/pub/mirror/CPAN/
2044 http://cpan-mirror.rbc.ru/pub/CPAN/
2045 http://mirror.rol.ru/CPAN/
2046 http://cpan.uni-altai.ru/
2047 http://cpan.webdesk.ru/
2048 ftp://cpan.webdesk.ru/cpan/
2049 http://mirror.yandex.ru/mirrors/cpan/
2050 ftp://mirror.yandex.ru/mirrors/cpan/
2051
2052 Serbia
2053 http://mirror.sbb.rs/CPAN/
2054 ftp://mirror.sbb.rs/CPAN/
2055
2056 Slovakia
2057 http://cpan.lnx.sk/
2058 http://tux.rainside.sk/CPAN/
2059 ftp://tux.rainside.sk/CPAN/
2060
2061 Slovenia
2062 http://ftp.arnes.si/software/perl/CPAN/
2063 ftp://ftp.arnes.si/software/perl/CPAN/
2064
2065 Spain
2066 http://mirrors.evowise.com/CPAN/
2067 http://osl.ugr.es/CPAN/
2068 http://ftp.rediris.es/mirror/CPAN/
2069 ftp://ftp.rediris.es/mirror/CPAN/
2070
2071 Sweden
2072 http://ftp.acc.umu.se/mirror/CPAN/
2073 ftp://ftp.acc.umu.se/mirror/CPAN/
2074
2075 Switzerland
2076 http://www.pirbot.com/mirrors/cpan/
2077 http://mirror.switch.ch/ftp/mirror/CPAN/
2078 ftp://mirror.switch.ch/mirror/CPAN/
2079
2080 Ukraine
2081 http://cpan.ip-connect.vn.ua/
2082 ftp://cpan.ip-connect.vn.ua/mirror/cpan/
2083
2084 United Kingdom
2085 http://cpan.mirror.anlx.net/
2086 ftp://ftp.mirror.anlx.net/CPAN/
2087 http://mirror.bytemark.co.uk/CPAN/
2088 ftp://mirror.bytemark.co.uk/CPAN/
2089 http://mirrors.coreix.net/CPAN/
2090 http://cpan.etla.org/
2091 ftp://cpan.etla.org/pub/CPAN/
2092 http://cpan.cpantesters.org/
2093 http://mirror.sax.uk.as61049.net/CPAN/
2094 http://mirror.sov.uk.goscomb.net/CPAN/
2095 http://www.mirrorservice.org/sites/cpan.perl.org/CPAN/
2096 ftp://ftp.mirrorservice.org/sites/cpan.perl.org/CPAN/
2097 http://mirror.ox.ac.uk/sites/www.cpan.org/
2098 ftp://mirror.ox.ac.uk/sites/www.cpan.org/
2099 http://ftp.ticklers.org/pub/CPAN/
2100 ftp://ftp.ticklers.org/pub/CPAN/
2101 http://cpan.mirrors.uk2.net/
2102 ftp://mirrors.uk2.net/pub/CPAN/
2103 http://mirror.ukhost4u.com/CPAN/
2104
2105 North America
2106 Canada
2107 http://CPAN.mirror.rafal.ca/
2108 ftp://CPAN.mirror.rafal.ca/pub/CPAN/
2109 http://mirror.csclub.uwaterloo.ca/CPAN/
2110 ftp://mirror.csclub.uwaterloo.ca/CPAN/
2111 http://mirrors.gossamer-threads.com/CPAN/
2112 http://mirror.its.dal.ca/cpan/
2113 ftp://mirror.its.dal.ca/cpan/
2114 ftp://ftp.ottix.net/pub/CPAN/
2115
2116 Costa Rica
2117 http://mirrors.ucr.ac.cr/CPAN/
2118
2119 Mexico
2120 http://www.msg.com.mx/CPAN/
2121 ftp://ftp.msg.com.mx/pub/CPAN/
2122
2123 United States
2124 Alabama
2125 http://mirror.teklinks.com/CPAN/
2126
2127 Arizona
2128 http://mirror.n5tech.com/CPAN/
2129 http://mirrors.namecheap.com/CPAN/
2130 ftp://mirrors.namecheap.com/CPAN/
2131
2132 California
2133 http://cpan.develooper.com/
2134 http://httpupdate127.cpanel.net/CPAN/
2135 http://mirrors.sonic.net/cpan/
2136 ftp://mirrors.sonic.net/cpan/
2137 http://www.perl.com/CPAN/
2138 http://cpan.yimg.com/
2139
2140 Idaho
2141 http://mirrors.syringanetworks.net/CPAN/
2142 ftp://mirrors.syringanetworks.net/CPAN/
2143
2144 Illinois
2145 http://cpan.mirrors.hoobly.com/
2146 http://mirror.team-cymru.org/CPAN/
2147 ftp://mirror.team-cymru.org/CPAN/
2148
2149 Indiana
2150 http://cpan.netnitco.net/
2151 ftp://cpan.netnitco.net/pub/mirrors/CPAN/
2152 ftp://ftp.uwsg.iu.edu/pub/perl/CPAN/
2153
2154 Kansas
2155 http://mirrors.concertpass.com/cpan/
2156
2157 Massachusetts
2158 http://mirrors.ccs.neu.edu/CPAN/
2159
2160 Michigan
2161 http://cpan.cse.msu.edu/
2162 ftp://cpan.cse.msu.edu/
2163 http://httpupdate118.cpanel.net/CPAN/
2164 http://mirrors-usa.go-parts.com/cpan/
2165 http://ftp.wayne.edu/CPAN/
2166 ftp://ftp.wayne.edu/CPAN/
2167
2168 New Hampshire
2169 http://mirror.metrocast.net/cpan/
2170
2171 New Jersey
2172 http://mirror.datapipe.net/CPAN/
2173 ftp://mirror.datapipe.net/pub/CPAN/
2174 http://www.hoovism.com/CPAN/
2175 ftp://ftp.hoovism.com/CPAN/
2176 http://cpan.mirror.nac.net/
2177
2178 New York
2179 http://mirror.cc.columbia.edu/pub/software/cpan/
2180 ftp://mirror.cc.columbia.edu/pub/software/cpan/
2181 http://cpan.belfry.net/
2182 http://cpan.erlbaum.net/
2183 ftp://cpan.erlbaum.net/CPAN/
2184 http://cpan.hexten.net/
2185 ftp://cpan.hexten.net/
2186 http://mirror.nyi.net/CPAN/
2187 ftp://mirror.nyi.net/pub/CPAN/
2188 http://noodle.portalus.net/CPAN/
2189 ftp://noodle.portalus.net/CPAN/
2190 http://mirrors.rit.edu/CPAN/
2191 ftp://mirrors.rit.edu/CPAN/
2192
2193 North Carolina
2194 http://httpupdate140.cpanel.net/CPAN/
2195 http://mirrors.ibiblio.org/CPAN/
2196
2197 Oregon
2198 http://ftp.osuosl.org/pub/CPAN/
2199 ftp://ftp.osuosl.org/pub/CPAN/
2200 http://mirror.uoregon.edu/CPAN/
2201
2202 Pennsylvania
2203 http://cpan.pair.com/
2204 ftp://cpan.pair.com/pub/CPAN/
2205 http://cpan.mirrors.ionfish.org/
2206
2207 South Carolina
2208 http://cpan.mirror.clemson.edu/
2209
2210 Texas
2211 http://mirror.uta.edu/CPAN/
2212
2213 Utah
2214 http://cpan.cs.utah.edu/
2215 ftp://cpan.cs.utah.edu/CPAN/
2216 ftp://mirror.xmission.com/CPAN/
2217
2218 Virginia
2219 http://mirror.cogentco.com/pub/CPAN/
2220 ftp://mirror.cogentco.com/pub/CPAN/
2221 http://mirror.jmu.edu/pub/CPAN/
2222 ftp://mirror.jmu.edu/pub/CPAN/
2223 http://mirror.us.leaseweb.net/CPAN/
2224 ftp://mirror.us.leaseweb.net/CPAN/
2225
2226 Washington
2227 http://cpan.llarian.net/
2228 ftp://cpan.llarian.net/pub/CPAN/
2229
2230 Wisconsin
2231 http://cpan.mirrors.tds.net/
2232 ftp://cpan.mirrors.tds.net/pub/CPAN/
2233
2234 Oceania
2235 Australia
2236 http://mirror.as24220.net/pub/cpan/
2237 ftp://mirror.as24220.net/pub/cpan/
2238 http://cpan.mirrors.ilisys.com.au/
2239 http://cpan.mirror.digitalpacific.com.au/
2240 ftp://mirror.internode.on.net/pub/cpan/
2241 http://mirror.optusnet.com.au/CPAN/
2242 http://cpan.mirror.serversaustralia.com.au/
2243 http://cpan.uberglobalmirror.com/
2244 http://mirror.waia.asn.au/pub/cpan/
2245
2246 New Caledonia
2247 http://cpan.lagoon.nc/pub/CPAN/
2248 ftp://cpan.lagoon.nc/pub/CPAN/
2249 http://cpan.nautile.nc/CPAN/
2250 ftp://cpan.nautile.nc/CPAN/
2251
2252 New Zealand
2253 ftp://ftp.auckland.ac.nz/pub/perl/CPAN/
2254 http://cpan.catalyst.net.nz/CPAN/
2255 ftp://cpan.catalyst.net.nz/pub/CPAN/
2256 http://cpan.inspire.net.nz/
2257 ftp://cpan.inspire.net.nz/cpan/
2258 http://mirror.webtastix.net/CPAN/
2259 ftp://mirror.webtastix.net/CPAN/
2260
2261 South America
2262 Argentina
2263 http://cpan.mmgdesigns.com.ar/
2264
2265 Brazil
2266 http://cpan.kinghost.net/
2267 http://linorg.usp.br/CPAN/
2268 http://mirror.nbtelecom.com.br/CPAN/
2269
2270 Chile
2271 http://cpan.dcc.uchile.cl/
2272 ftp://cpan.dcc.uchile.cl/pub/lang/cpan/
2273
2274 RSYNC Mirrors
2275 rsync://ftp.is.co.za/IS-Mirror/ftp.cpan.org/
2276 rsync://mirror.ac.za/CPAN/
2277 rsync://mirror.zol.co.zw/CPAN/
2278 rsync://mirror.dhakacom.com/CPAN/
2279 rsync://mirrors.ustc.edu.cn/CPAN/
2280 rsync://mirrors.xmu.edu.cn/CPAN/
2281 rsync://kambing.ui.ac.id/CPAN/
2282 rsync://ftp.jaist.ac.jp/pub/CPAN/
2283 rsync://mirror.jre655.com/CPAN/
2284 rsync://ftp.kddilabs.jp/cpan/
2285 rsync://ftp.nara.wide.ad.jp/cpan/
2286 rsync://ftp.riken.jp/cpan/
2287 rsync://mirror.neolabs.kz/CPAN/
2288 rsync://mirror.qnren.qa/CPAN/
2289 rsync://ftp.neowiz.com/CPAN/
2290 rsync://mirror.0x.sg/CPAN/
2291 rsync://ftp.yzu.edu.tw/pub/CPAN/
2292 rsync://ftp.ubuntu-tw.org/CPAN/
2293 rsync://mirrors.digipower.vn/CPAN/
2294 rsync://cpan.inode.at/CPAN/
2295 rsync://ftp.byfly.by/CPAN/
2296 rsync://mirror.datacenter.by/CPAN/
2297 rsync://ftp.belnet.be/cpan/
2298 rsync://cpan.mirror.ba/CPAN/
2299 rsync://mirrors.neterra.net/CPAN/
2300 rsync://mirrors.netix.net/CPAN/
2301 rsync://mirror.dkm.cz/cpan/
2302 rsync://mirrors.nic.cz/CPAN/
2303 rsync://cpan.mirror.vutbr.cz/cpan/
2304 rsync://rsync.nic.funet.fi/CPAN/
2305 rsync://ftp.ciril.fr/pub/cpan/
2306 rsync://distrib-coffee.ipsl.jussieu.fr/pub/mirrors/cpan/
2307 rsync://cpan.mirrors.ovh.net/CPAN/
2308 rsync://mirror.de.leaseweb.net/CPAN/
2309 rsync://mirror.euserv.net/cpan/
2310 rsync://ftp-stud.hs-esslingen.de/CPAN/
2311 rsync://ftp.gwdg.de/pub/languages/perl/CPAN/
2312 rsync://ftp.hawo.stw.uni-erlangen.de/CPAN/
2313 rsync://cpan.mirror.iphh.net/CPAN/
2314 rsync://mirror.netcologne.de/cpan/
2315 rsync://ftp.halifax.rwth-aachen.de/cpan/
2316 rsync://ftp.ntua.gr/CPAN/
2317 rsync://mirror.met.hu/CPAN/
2318 rsync://ftp.heanet.ie/mirrors/ftp.perl.org/pub/CPAN/
2319 rsync://rsync.panu.it/CPAN/
2320 rsync://mirror.as43289.net/CPAN/
2321 rsync://rsync.cs.uu.nl/CPAN/
2322 rsync://mirror.nl.leaseweb.net/CPAN/
2323 rsync://ftp.nluug.nl/CPAN/
2324 rsync://mirror.transip.net/CPAN/
2325 rsync://cpan.uib.no/cpan/
2326 rsync://cpan.vianett.no/CPAN/
2327 rsync://cpan.perl-hackers.net/CPAN/
2328 rsync://cpan.perl.pt/cpan/
2329 rsync://mirrors.m247.ro/CPAN/
2330 rsync://mirrors.teentelecom.net/CPAN/
2331 rsync://cpan.webdesk.ru/CPAN/
2332 rsync://mirror.yandex.ru/mirrors/cpan/
2333 rsync://mirror.sbb.rs/CPAN/
2334 rsync://ftp.acc.umu.se/mirror/CPAN/
2335 rsync://rsync.pirbot.com/ftp/cpan/
2336 rsync://cpan.ip-connect.vn.ua/CPAN/
2337 rsync://rsync.mirror.anlx.net/CPAN/
2338 rsync://mirror.bytemark.co.uk/CPAN/
2339 rsync://mirror.sax.uk.as61049.net/CPAN/
2340 rsync://rsync.mirrorservice.org/cpan.perl.org/CPAN/
2341 rsync://ftp.ticklers.org/CPAN/
2342 rsync://mirrors.uk2.net/CPAN/
2343 rsync://CPAN.mirror.rafal.ca/CPAN/
2344 rsync://mirror.csclub.uwaterloo.ca/CPAN/
2345 rsync://mirrors.namecheap.com/CPAN/
2346 rsync://mirrors.syringanetworks.net/CPAN/
2347 rsync://mirror.team-cymru.org/CPAN/
2348 rsync://debian.cse.msu.edu/cpan/
2349 rsync://mirrors-usa.go-parts.com/mirrors/cpan/
2350 rsync://rsync.hoovism.com/CPAN/
2351 rsync://mirror.cc.columbia.edu/cpan/
2352 rsync://noodle.portalus.net/CPAN/
2353 rsync://mirrors.rit.edu/cpan/
2354 rsync://mirrors.ibiblio.org/CPAN/
2355 rsync://cpan.pair.com/CPAN/
2356 rsync://cpan.cs.utah.edu/CPAN/
2357 rsync://mirror.cogentco.com/CPAN/
2358 rsync://mirror.jmu.edu/CPAN/
2359 rsync://mirror.us.leaseweb.net/CPAN/
2360 rsync://cpan.mirror.digitalpacific.com.au/cpan/
2361 rsync://mirror.internode.on.net/cpan/
2362 rsync://uberglobalmirror.com/cpan/
2363 rsync://cpan.lagoon.nc/cpan/
2364 rsync://mirrors.mmgdesigns.com.ar/CPAN/
2365
2366 For an up-to-date listing of CPAN sites, see
2367 <http://www.cpan.org/SITES> or <ftp://www.cpan.org/SITES>.
2368
2370 (The following section is borrowed directly from Tim Bunce's modules
2371 file, available at your nearest CPAN site.)
2372
2373 Perl implements a class using a package, but the presence of a package
2374 doesn't imply the presence of a class. A package is just a namespace.
2375 A class is a package that provides subroutines that can be used as
2376 methods. A method is just a subroutine that expects, as its first
2377 argument, either the name of a package (for "static" methods), or a
2378 reference to something (for "virtual" methods).
2379
2380 A module is a file that (by convention) provides a class of the same
2381 name (sans the .pm), plus an import method in that class that can be
2382 called to fetch exported symbols. This module may implement some of
2383 its methods by loading dynamic C or C++ objects, but that should be
2384 totally transparent to the user of the module. Likewise, the module
2385 might set up an AUTOLOAD function to slurp in subroutine definitions on
2386 demand, but this is also transparent. Only the .pm file is required to
2387 exist. See perlsub, perlobj, and AutoLoader for details about the
2388 AUTOLOAD mechanism.
2389
2390 Guidelines for Module Creation
2391 · Do similar modules already exist in some form?
2392
2393 If so, please try to reuse the existing modules either in whole or
2394 by inheriting useful features into a new class. If this is not
2395 practical try to get together with the module authors to work on
2396 extending or enhancing the functionality of the existing modules.
2397 A perfect example is the plethora of packages in perl4 for dealing
2398 with command line options.
2399
2400 If you are writing a module to expand an already existing set of
2401 modules, please coordinate with the author of the package. It
2402 helps if you follow the same naming scheme and module interaction
2403 scheme as the original author.
2404
2405 · Try to design the new module to be easy to extend and reuse.
2406
2407 Try to "use warnings;" (or "use warnings qw(...);"). Remember that
2408 you can add "no warnings qw(...);" to individual blocks of code
2409 that need less warnings.
2410
2411 Use blessed references. Use the two argument form of bless to
2412 bless into the class name given as the first parameter of the
2413 constructor, e.g.,:
2414
2415 sub new {
2416 my $class = shift;
2417 return bless {}, $class;
2418 }
2419
2420 or even this if you'd like it to be used as either a static or a
2421 virtual method.
2422
2423 sub new {
2424 my $self = shift;
2425 my $class = ref($self) || $self;
2426 return bless {}, $class;
2427 }
2428
2429 Pass arrays as references so more parameters can be added later
2430 (it's also faster). Convert functions into methods where
2431 appropriate. Split large methods into smaller more flexible ones.
2432 Inherit methods from other modules if appropriate.
2433
2434 Avoid class name tests like: "die "Invalid" unless ref $ref eq
2435 'FOO'". Generally you can delete the "eq 'FOO'" part with no harm
2436 at all. Let the objects look after themselves! Generally, avoid
2437 hard-wired class names as far as possible.
2438
2439 Avoid "$r->Class::func()" where using "@ISA=qw(... Class ...)" and
2440 "$r->func()" would work.
2441
2442 Use autosplit so little used or newly added functions won't be a
2443 burden to programs that don't use them. Add test functions to the
2444 module after __END__ either using AutoSplit or by saying:
2445
2446 eval join('',<main::DATA>) || die $@ unless caller();
2447
2448 Does your module pass the 'empty subclass' test? If you say
2449 "@SUBCLASS::ISA = qw(YOURCLASS);" your applications should be able
2450 to use SUBCLASS in exactly the same way as YOURCLASS. For example,
2451 does your application still work if you change: "$obj =
2452 YOURCLASS->new();" into: "$obj = SUBCLASS->new();" ?
2453
2454 Avoid keeping any state information in your packages. It makes it
2455 difficult for multiple other packages to use yours. Keep state
2456 information in objects.
2457
2458 Always use -w.
2459
2460 Try to "use strict;" (or "use strict qw(...);"). Remember that you
2461 can add "no strict qw(...);" to individual blocks of code that need
2462 less strictness.
2463
2464 Always use -w.
2465
2466 Follow the guidelines in perlstyle.
2467
2468 Always use -w.
2469
2470 · Some simple style guidelines
2471
2472 The perlstyle manual supplied with Perl has many helpful points.
2473
2474 Coding style is a matter of personal taste. Many people evolve
2475 their style over several years as they learn what helps them write
2476 and maintain good code. Here's one set of assorted suggestions
2477 that seem to be widely used by experienced developers:
2478
2479 Use underscores to separate words. It is generally easier to read
2480 $var_names_like_this than $VarNamesLikeThis, especially for non-
2481 native speakers of English. It's also a simple rule that works
2482 consistently with VAR_NAMES_LIKE_THIS.
2483
2484 Package/Module names are an exception to this rule. Perl informally
2485 reserves lowercase module names for 'pragma' modules like integer
2486 and strict. Other modules normally begin with a capital letter and
2487 use mixed case with no underscores (need to be short and portable).
2488
2489 You may find it helpful to use letter case to indicate the scope or
2490 nature of a variable. For example:
2491
2492 $ALL_CAPS_HERE constants only (beware clashes with Perl vars)
2493 $Some_Caps_Here package-wide global/static
2494 $no_caps_here function scope my() or local() variables
2495
2496 Function and method names seem to work best as all lowercase.
2497 e.g., "$obj->as_string()".
2498
2499 You can use a leading underscore to indicate that a variable or
2500 function should not be used outside the package that defined it.
2501
2502 · Select what to export.
2503
2504 Do NOT export method names!
2505
2506 Do NOT export anything else by default without a good reason!
2507
2508 Exports pollute the namespace of the module user. If you must
2509 export try to use @EXPORT_OK in preference to @EXPORT and avoid
2510 short or common names to reduce the risk of name clashes.
2511
2512 Generally anything not exported is still accessible from outside
2513 the module using the ModuleName::item_name (or
2514 "$blessed_ref->method") syntax. By convention you can use a
2515 leading underscore on names to indicate informally that they are
2516 'internal' and not for public use.
2517
2518 (It is actually possible to get private functions by saying: "my
2519 $subref = sub { ... }; &$subref;". But there's no way to call
2520 that directly as a method, because a method must have a name in the
2521 symbol table.)
2522
2523 As a general rule, if the module is trying to be object oriented
2524 then export nothing. If it's just a collection of functions then
2525 @EXPORT_OK anything but use @EXPORT with caution.
2526
2527 · Select a name for the module.
2528
2529 This name should be as descriptive, accurate, and complete as
2530 possible. Avoid any risk of ambiguity. Always try to use two or
2531 more whole words. Generally the name should reflect what is
2532 special about what the module does rather than how it does it.
2533 Please use nested module names to group informally or categorize a
2534 module. There should be a very good reason for a module not to
2535 have a nested name. Module names should begin with a capital
2536 letter.
2537
2538 Having 57 modules all called Sort will not make life easy for
2539 anyone (though having 23 called Sort::Quick is only marginally
2540 better :-). Imagine someone trying to install your module
2541 alongside many others.
2542
2543 If you are developing a suite of related modules/classes it's good
2544 practice to use nested classes with a common prefix as this will
2545 avoid namespace clashes. For example: Xyz::Control, Xyz::View,
2546 Xyz::Model etc. Use the modules in this list as a naming guide.
2547
2548 If adding a new module to a set, follow the original author's
2549 standards for naming modules and the interface to methods in those
2550 modules.
2551
2552 If developing modules for private internal or project specific use,
2553 that will never be released to the public, then you should ensure
2554 that their names will not clash with any future public module. You
2555 can do this either by using the reserved Local::* category or by
2556 using a category name that includes an underscore like Foo_Corp::*.
2557
2558 To be portable each component of a module name should be limited to
2559 11 characters. If it might be used on MS-DOS then try to ensure
2560 each is unique in the first 8 characters. Nested modules make this
2561 easier.
2562
2563 For additional guidance on the naming of modules, please consult:
2564
2565 http://pause.perl.org/pause/query?ACTION=pause_namingmodules
2566
2567 or send mail to the <module-authors@perl.org> mailing list.
2568
2569 · Have you got it right?
2570
2571 How do you know that you've made the right decisions? Have you
2572 picked an interface design that will cause problems later? Have you
2573 picked the most appropriate name? Do you have any questions?
2574
2575 The best way to know for sure, and pick up many helpful
2576 suggestions, is to ask someone who knows. The
2577 <module-authors@perl.org> mailing list is useful for this purpose;
2578 it's also accessible via news interface as perl.module-authors at
2579 nntp.perl.org.
2580
2581 All you need to do is post a short summary of the module, its
2582 purpose and interfaces. A few lines on each of the main methods is
2583 probably enough. (If you post the whole module it might be ignored
2584 by busy people - generally the very people you want to read it!)
2585
2586 Don't worry about posting if you can't say when the module will be
2587 ready - just say so in the message. It might be worth inviting
2588 others to help you, they may be able to complete it for you!
2589
2590 · README and other Additional Files.
2591
2592 It's well known that software developers usually fully document the
2593 software they write. If, however, the world is in urgent need of
2594 your software and there is not enough time to write the full
2595 documentation please at least provide a README file containing:
2596
2597 · A description of the module/package/extension etc.
2598
2599 · A copyright notice - see below.
2600
2601 · Prerequisites - what else you may need to have.
2602
2603 · How to build it - possible changes to Makefile.PL etc.
2604
2605 · How to install it.
2606
2607 · Recent changes in this release, especially
2608 incompatibilities
2609
2610 · Changes / enhancements you plan to make in the future.
2611
2612 If the README file seems to be getting too large you may wish to
2613 split out some of the sections into separate files: INSTALL,
2614 Copying, ToDo etc.
2615
2616 · Adding a Copyright Notice.
2617
2618 How you choose to license your work is a personal decision.
2619 The general mechanism is to assert your Copyright and then make
2620 a declaration of how others may copy/use/modify your work.
2621
2622 Perl, for example, is supplied with two types of licence: The
2623 GNU GPL and The Artistic Licence (see the files README,
2624 Copying, and Artistic, or perlgpl and perlartistic). Larry has
2625 good reasons for NOT just using the GNU GPL.
2626
2627 My personal recommendation, out of respect for Larry, Perl, and
2628 the Perl community at large is to state something simply like:
2629
2630 Copyright (c) 1995 Your Name. All rights reserved.
2631 This program is free software; you can redistribute it and/or
2632 modify it under the same terms as Perl itself.
2633
2634 This statement should at least appear in the README file. You
2635 may also wish to include it in a Copying file and your source
2636 files. Remember to include the other words in addition to the
2637 Copyright.
2638
2639 · Give the module a version/issue/release number.
2640
2641 To be fully compatible with the Exporter and MakeMaker modules
2642 you should store your module's version number in a non-my
2643 package variable called $VERSION. This should be a positive
2644 floating point number with at least two digits after the
2645 decimal (i.e., hundredths, e.g, "$VERSION = "0.01""). Don't
2646 use a "1.3.2" style version. See Exporter for details.
2647
2648 It may be handy to add a function or method to retrieve the
2649 number. Use the number in announcements and archive file names
2650 when releasing the module (ModuleName-1.02.tar.Z). See perldoc
2651 ExtUtils::MakeMaker.pm for details.
2652
2653 · How to release and distribute a module.
2654
2655 If possible, register the module with CPAN. Follow the
2656 instructions and links on:
2657
2658 http://www.cpan.org/modules/04pause.html
2659
2660 and upload to:
2661
2662 http://pause.perl.org/
2663
2664 and notify <modules@perl.org>. This will allow anyone to
2665 install your module using the "cpan" tool distributed with
2666 Perl.
2667
2668 By using the WWW interface you can ask the Upload Server to
2669 mirror your modules from your ftp or WWW site into your own
2670 directory on CPAN!
2671
2672 · Take care when changing a released module.
2673
2674 Always strive to remain compatible with previous released
2675 versions. Otherwise try to add a mechanism to revert to the
2676 old behavior if people rely on it. Document incompatible
2677 changes.
2678
2679 Guidelines for Converting Perl 4 Library Scripts into Modules
2680 · There is no requirement to convert anything.
2681
2682 If it ain't broke, don't fix it! Perl 4 library scripts should
2683 continue to work with no problems. You may need to make some minor
2684 changes (like escaping non-array @'s in double quoted strings) but
2685 there is no need to convert a .pl file into a Module for just that.
2686
2687 · Consider the implications.
2688
2689 All Perl applications that make use of the script will need to be
2690 changed (slightly) if the script is converted into a module. Is it
2691 worth it unless you plan to make other changes at the same time?
2692
2693 · Make the most of the opportunity.
2694
2695 If you are going to convert the script to a module you can use the
2696 opportunity to redesign the interface. The guidelines for module
2697 creation above include many of the issues you should consider.
2698
2699 · The pl2pm utility will get you started.
2700
2701 This utility will read *.pl files (given as parameters) and write
2702 corresponding *.pm files. The pl2pm utilities does the following:
2703
2704 · Adds the standard Module prologue lines
2705
2706 · Converts package specifiers from ' to ::
2707
2708 · Converts die(...) to croak(...)
2709
2710 · Several other minor changes
2711
2712 Being a mechanical process pl2pm is not bullet proof. The converted
2713 code will need careful checking, especially any package statements.
2714 Don't delete the original .pl file till the new .pm one works!
2715
2716 Guidelines for Reusing Application Code
2717 · Complete applications rarely belong in the Perl Module Library.
2718
2719 · Many applications contain some Perl code that could be reused.
2720
2721 Help save the world! Share your code in a form that makes it easy
2722 to reuse.
2723
2724 · Break-out the reusable code into one or more separate module files.
2725
2726 · Take the opportunity to reconsider and redesign the interfaces.
2727
2728 · In some cases the 'application' can then be reduced to a small
2729
2730 fragment of code built on top of the reusable modules. In these
2731 cases the application could invoked as:
2732
2733 % perl -e 'use Module::Name; method(@ARGV)' ...
2734 or
2735 % perl -mModule::Name ... (in perl5.002 or higher)
2736
2738 Perl does not enforce private and public parts of its modules as you
2739 may have been used to in other languages like C++, Ada, or Modula-17.
2740 Perl doesn't have an infatuation with enforced privacy. It would
2741 prefer that you stayed out of its living room because you weren't
2742 invited, not because it has a shotgun.
2743
2744 The module and its user have a contract, part of which is common law,
2745 and part of which is "written". Part of the common law contract is
2746 that a module doesn't pollute any namespace it wasn't asked to. The
2747 written contract for the module (A.K.A. documentation) may make other
2748 provisions. But then you know when you "use RedefineTheWorld" that
2749 you're redefining the world and willing to take the consequences.
2750
2751
2752
2753perl v5.30.1 2019-11-29 PERLMODLIB(1)