summaryrefslogtreecommitdiff
path: root/pod
diff options
context:
space:
mode:
authorPerl 5 Porters <perl5-porters@africa.nicoh.com>1997-01-04 17:44:00 +1200
committerChip Salzenberg <chip@atlantic.net>1997-01-04 17:44:00 +1200
commit8ebc5c0145d2e3559bce3073437e6d027dcdffcc (patch)
tree19e91b8b9e9b19b4116b7b4b64f2a4755e6bd179 /pod
parent7cfe7857715f78206e6d7d6f7fd52983de4dec44 (diff)
downloadperl-8ebc5c0145d2e3559bce3073437e6d027dcdffcc.tar.gz
[inseparable changes from patch from perl5.003_18 to perl5.003_19]
CORE LANGUAGE CHANGES Subject: Make method cache invisible to user code From: Chip Salzenberg <chip@atlantic.net> Files: dump.c gv.c gv.h hv.c op.c perl.c pp_hot.c pp_sys.c sv.c toke.c Subject: Never parse "{m,s,y,tr,q{,q,w,x}}:{,:}" as package or label From: Chip Salzenberg <chip@atlantic.net> Files: toke.c CORE PORTABILITY Subject: Fix $^X under HP-UX From: Chip Salzenberg <chip@atlantic.net> Files: hints/hpux.sh toke.c Subject: New hints/hpux.sh Date: Tue, 31 Dec 1996 15:09:32 -0800 From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com> Files: hints/hpux.sh private-msgid: <199612312309.AA283393772@hpcc123.corp.hp.com> DOCUMENTATION Subject: Perlguts, version 28 Date: Fri, 3 Jan 1997 13:10:46 -0800 From: Jeff Okamoto <okamoto@hpcc123.corp.hp.com> Files: pod/perlguts.pod private-msgid: <199701032110.AA102535846@hpcc123.corp.hp.com> Subject: Miscellaneous pod patches From: Ralf S. Engelschall <rse@engelschall.com> Files: pod/Makefile pod/perldebug.pod pod/perlfunc.pod pod/perlguts.pod Subject: expanded flock() docs Date: Fri, 03 Jan 1997 19:31:11 -0500 From: Roderick Schertler <roderick@gate.net> Files: pod/perlfunc.pod Msg-ID: <4481.852337871@eeyore.ibcinc.com> (applied based on p5p patch as commit 1fd81fbbe87d964ad1f7dbdce41e36f3781dcf82) Subject: Use Text::Wrap in buildtoc; run buildtoc From: Ulrich Pfeifer <pfeifer@charly.informatik.uni-dortmund.de> Files: pod/buildtoc pod/perltoc.pod Subject: Remove obsolete perlovl.pod From: Chip Salzenberg <chip@atlantic.net> Files: MANIFEST plan9/mkfile pod/perlovl.pod vms/Makefile vms/descrip.mms OTHER CORE CHANGES Subject: Fix segv when calling named closures From: Chip Salzenberg <chip@atlantic.net> Files: pp_hot.c Subject: Finish rationalizing "undef value" warnings From: Chip Salzenberg <chip@atlantic.net> Files: doop.c pp.c sv.c t/op/assignwarn.t Subject: Arrange for all "_<file" entries to be in %main:: From: Chip Salzenberg <chip@atlantic.net> Files: gv.c lib/perl5db.pl Subject: Introduce CVf_NODEBUG flag Date: Wed, 01 Jan 1997 15:42:05 -0500 From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: cv.h pp_hot.c Msg-ID: <199701012042.PAA25994@aatma.engin.umich.edu> (applied based on p5p patch as commit a3d90dd510fe5a67ed9b80e603493d285c30aa97) Subject: Reword 'may be "0"' warning per Larry; fix its line number From: Chip Salzenberg <chip@atlantic.net> Files: op.c pod/perldiag.pod Subject: 5.003_18: perl_{con,des}truct fixes Date: Fri, 03 Jan 1997 15:42:04 -0500 From: Doug MacEachern <dougm@osf.org> Files: perl.c perl.h pod/perlembed.pod pod/perltoc.pod t/op/sysio.t Msg-ID: <199701032042.PAA06766@postman.osf.org> (applied based on p5p patch as commit 316c7b3d7b47e3143f94c7f8621e854c519d1e87) Subject: Fix lost value from READLINE after TIEHANDLE From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: pp_hot.c sv.h TESTS Subject: Create t/pragma directory; populate with new and old From: Paul Marquess <pmarquess@bfsec.bt.co.uk> Files: MANIFEST Makefile.SH t/TEST t/comp/use.t t/lib/locale.t t/op/overload.t t/op/use.t t/pragma/locale.t t/pragma/overload.t t/pragma/strict-refs t/pragma/strict-subs t/pragma/strict-vars t/pragma/strict.t t/pragma/subs.t t/pragma/warn-global t/pragma/warning.t Subject: New tests: comp/colon.t and op/assignwarn.t From: Robin Barker <rmb@cise.npl.co.uk> Files: MANIFEST t/comp/colon.t t/op/assignwarn.t
Diffstat (limited to 'pod')
-rw-r--r--pod/Makefile224
-rw-r--r--pod/buildtoc167
-rw-r--r--pod/perldebug.pod30
-rw-r--r--pod/perldiag.pod6
-rw-r--r--pod/perlembed.pod215
-rw-r--r--pod/perlfunc.pod41
-rw-r--r--pod/perlguts.pod29
-rw-r--r--pod/perlsec.pod3
-rw-r--r--pod/perltoc.pod2616
9 files changed, 1900 insertions, 1431 deletions
diff --git a/pod/Makefile b/pod/Makefile
index 9012b5735b..cd01028069 100644
--- a/pod/Makefile
+++ b/pod/Makefile
@@ -3,157 +3,153 @@ CONVERTERS = pod2html pod2latex pod2man pod2text checkpods
all: $(CONVERTERS) man
PERL = ../miniperl
-POD = \
+POD = \
perl.pod \
- perlapio.pod \
- perlbook.pod \
- perlbot.pod \
- perlcall.pod \
- perldata.pod \
- perldebug.pod \
- perldiag.pod \
- perldsc.pod \
- perlembed.pod \
- perlform.pod \
- perlfunc.pod \
- perlguts.pod \
- perlipc.pod \
- perllocale.pod \
- perllol.pod \
- perlmod.pod \
perlnews.pod \
- perlobj.pod \
+ perldata.pod \
+ perlsyn.pod \
perlop.pod \
- perlovl.pod \
- perlpod.pod \
perlre.pod \
- perlref.pod \
perlrun.pod \
- perlsec.pod \
- perlstyle.pod \
+ perlfunc.pod \
+ perlvar.pod \
perlsub.pod \
- perlsyn.pod \
- perltie.pod \
- perltoc.pod \
+ perlmod.pod \
+ perlform.pod \
+ perllocale.pod \
+ perlref.pod \
+ perldsc.pod \
+ perllol.pod \
perltoot.pod \
+ perlobj.pod \
+ perltie.pod \
+ perlbot.pod \
+ perlipc.pod \
+ perldebug.pod \
+ perldiag.pod \
+ perlsec.pod \
perltrap.pod \
- perlvar.pod \
+ perlstyle.pod \
+ perlpod.pod \
+ perlbook.pod \
+ perlembed.pod \
+ perlapio.pod \
perlxs.pod \
- perlxstut.pod
+ perlxstut.pod \
+ perlguts.pod \
+ perlcall.pod \
+ perltoc.pod
-MAN = \
+MAN = \
perl.man \
- perlapio.man \
- perlbook.man \
- perlbot.man \
- perlcall.man \
- perldata.man \
- perldebug.man \
- perldiag.man \
- perldsc.man \
- perlembed.man \
- perlform.man \
- perlfunc.man \
- perlguts.man \
- perlipc.man \
- perllocale.man \
- perllol.man \
- perlmod.man \
perlnews.man \
- perlobj.man \
+ perldata.man \
+ perlsyn.man \
perlop.man \
- perlovl.man \
- perlpod.man \
perlre.man \
- perlref.man \
perlrun.man \
- perlsec.man \
- perlstyle.man \
+ perlfunc.man \
+ perlvar.man \
perlsub.man \
- perlsyn.man \
- perltie.man \
- perltoc.man \
+ perlmod.man \
+ perlform.man \
+ perllocale.man \
+ perlref.man \
+ perldsc.man \
+ perllol.man \
perltoot.man \
+ perlobj.man \
+ perltie.man \
+ perlbot.man \
+ perlipc.man \
+ perldebug.man \
+ perldiag.man \
+ perlsec.man \
perltrap.man \
- perlvar.man \
+ perlstyle.man \
+ perlpod.man \
+ perlbook.man \
+ perlembed.man \
+ perlapio.man \
perlxs.man \
- perlxstut.man
+ perlxstut.man \
+ perlguts.man \
+ perlcall.man \
+ perltoc.man
-HTML = \
+HTML = \
perl.html \
- perlapio.html \
- perlbook.html \
- perlbot.html \
- perlcall.html \
- perldata.html \
- perldebug.html \
- perldiag.html \
- perldsc.html \
- perlembed.html \
- perlform.html \
- perlfunc.html \
- perlguts.html \
- perlipc.html \
- perllocale.html \
- perllol.html \
- perlmod.html \
perlnews.html \
- perlobj.html \
+ perldata.html \
+ perlsyn.html \
perlop.html \
- perlovl.html \
- perlpod.html \
perlre.html \
- perlref.html \
perlrun.html \
- perlsec.html \
- perlstyle.html \
+ perlfunc.html \
+ perlvar.html \
perlsub.html \
- perlsyn.html \
- perltie.html \
- perltoc.html \
+ perlmod.html \
+ perlform.html \
+ perllocale.html \
+ perlref.html \
+ perldsc.html \
+ perllol.html \
perltoot.html \
+ perlobj.html \
+ perltie.html \
+ perlbot.html \
+ perlipc.html \
+ perldebug.html \
+ perldiag.html \
+ perlsec.html \
perltrap.html \
- perlvar.html \
+ perlstyle.html \
+ perlpod.html \
+ perlbook.html \
+ perlembed.html \
+ perlapio.html \
perlxs.html \
- perlxstut.html
+ perlxstut.html \
+ perlguts.html \
+ perlcall.html \
+ perltoc.html
-TEX = \
+TEX = \
perl.tex \
- perlapio.tex \
- perlbook.tex \
- perlbot.tex \
- perlcall.tex \
- perldata.tex \
- perldebug.tex \
- perldiag.tex \
- perldsc.tex \
- perlembed.tex \
- perlform.tex \
- perlfunc.tex \
- perlguts.tex \
- perlipc.tex \
- perllocale.tex \
- perllol.tex \
- perlmod.tex \
perlnews.tex \
- perlobj.tex \
+ perldata.tex \
+ perlsyn.tex \
perlop.tex \
- perlovl.tex \
- perlpod.tex \
perlre.tex \
- perlref.tex \
perlrun.tex \
- perlsec.tex \
- perlstyle.tex \
+ perlfunc.tex \
+ perlvar.tex \
perlsub.tex \
- perlsyn.tex \
- perltie.tex \
- perltoc.tex \
+ perlmod.tex \
+ perlform.tex \
+ perllocale.tex \
+ perlref.tex \
+ perldsc.tex \
+ perllol.tex \
perltoot.tex \
+ perlobj.tex \
+ perltie.tex \
+ perlbot.tex \
+ perlipc.tex \
+ perldebug.tex \
+ perldiag.tex \
+ perlsec.tex \
perltrap.tex \
- perlvar.tex \
+ perlstyle.tex \
+ perlpod.tex \
+ perlbook.tex \
+ perlembed.tex \
+ perlapio.tex \
perlxs.tex \
- perlxstut.tex
+ perlxstut.tex \
+ perlguts.tex \
+ perlcall.tex \
+ perltoc.tex
man: pod2man $(MAN)
@@ -164,6 +160,9 @@ html: pod2html
tex: pod2latex $(TEX)
+toc:
+ $(PERL) -I../lib buildtoc >perltoc.pod
+
.SUFFIXES: .pm .pod .man
.pm.man: pod2man
@@ -190,6 +189,7 @@ tex: pod2latex $(TEX)
clean:
rm -f $(MAN) $(HTML) $(TEX)
+ rm -f *.aux *.log
realclean: clean
rm -f $(CONVERTERS)
diff --git a/pod/buildtoc b/pod/buildtoc
index daf26c1c57..30fa9ee69c 100644
--- a/pod/buildtoc
+++ b/pod/buildtoc
@@ -1,21 +1,23 @@
use File::Find;
use Cwd;
+use Text::Wrap;
-@pods = qw{
- perl
- perldata perlsyn perlop perlre perlrun perlfunc perlvar
- perlsub perlmod perlform
- perlref perldsc perllol perlobj perltie perlbot perlipc
- perldebug perldiag perlsec perltrap perlstyle
- perlpod perlbook
+sub output ($);
+
+@pods = qw(
+ perl perlnews perldata perlsyn perlop perlre perlrun perlfunc
+ perlvar perlsub perlmod perlform perllocale perlref perldsc
+ perllol perltoot perlobj perltie perlbot perlipc perldebug
+ perldiag perlsec perltrap perlstyle perlpod perlbook
perlembed perlapio perlxs perlxstut perlguts perlcall
- };
-for (@pods) { s/$/.pod/ }
+ );
+
+for (@pods) { s/$/.pod/ }
$/ = '';
@ARGV = @pods;
-($_= <<EOPOD2B) =~ s/^\t//gm && print;
+($_= <<EOPOD2B) =~ s/^\t//gm && output($_);
=head1 NAME
@@ -23,38 +25,40 @@ $/ = '';
=head1 DESCRIPTION
- This page provides a brief table of contents for the rest of the Perl
- documentation set. It is meant to be be quickly scanned or grepped
+ This page provides a brief table of contents for the rest of the Perl
+ documentation set. It is meant to be bescanned quickly or grepped
through to locate the proper section you're looking for.
=head1 BASIC DOCUMENTATION
EOPOD2B
+#' make emacs happy
podset(@pods);
find \&getpods => qw(../lib ../ext);
+
sub getpods {
- if (/\.p(od|m)$/) {
- my $tmp;
+ if (/\.p(od|m)$/) {
# Skip .pm files that have corresponding .pod files, and Functions.pm.
- return if (($tmp = $_) =~ s/\.pm$/.pod/ && -f $tmp);
- return if ($_ eq '../lib/Pod/Functions.pm');####Used only by pod itself
-
+ return if /(.*)\.pm$/ && -f "$1.pod";
my $file = $File::Find::name;
+ return if $file eq '../lib/Pod/Functions.pm'; # Used only by pod itself
+
die "tut $name" if $file =~ /TUT/;
unless (open (F, "< $_\0")) {
warn "bogus <$file>: $!";
system "ls", "-l", $file;
- } else {
+ }
+ else {
my $line;
while ($line = <F>) {
if ($line =~ /^=head1\s+NAME\b/) {
push @modpods, $file;
#warn "GOOD $file\n";
return;
- }
- }
+ }
+ }
warn "EVIL $file\n";
}
}
@@ -71,14 +75,14 @@ for (@modpods) {
if ($done{$name}++) {
# warn "already did $_\n";
next;
- }
+ }
push @modules, $_;
push @modname, $name;
- }
-}
+ }
+}
+
+($_= <<EOPOD2B) =~ s/^\t//gm && output($_);
-($_= <<EOPOD2B) =~ s/^\t//gm && print;
-
=head1 PRAGMA DOCUMENTATION
@@ -87,8 +91,8 @@ EOPOD2B
podset(sort @pragmata);
-($_= <<EOPOD2B) =~ s/^\t//gm && print;
-
+($_= <<EOPOD2B) =~ s/^\t//gm && output($_);
+
=head1 MODULE DOCUMENTATION
@@ -98,41 +102,41 @@ EOPOD2B
podset( @modules[ sort { $modname[$a] cmp $modname[$b] } 0 .. $#modules ] );
($_= <<EOPOD2B) =~ s/^\t//gm;
-
+
=head1 AUXILIARY DOCUMENTATION
- Here should be listed all the extra programs' docs, but they
- don't all have man pages yet:
+ Here should be listed all the extra programs' documentation, but they
+ don't all have manual pages yet:
=item a2p
=item s2p
=item find2perl
-
+
=item h2ph
-
+
=item c2ph
=item h2xs
=item xsubpp
- =item pod2man
+ =item pod2man
=item wrapsuid
=head1 AUTHOR
- Larry Wall E<lt>F<larry\@wall.org>E<gt>, with the help of oodles
+ Larry Wall E<lt>F<larry\@wall.org>E<gt>, with the help of oodles
of other folks.
EOPOD2B
-print;
-
+output $_;
+output "\n"; # flush $LINE
exit;
sub podset {
@@ -141,36 +145,30 @@ sub podset {
while(<>) {
if (s/^=head1 (NAME)\s*/=head2 /) {
$pod = path2modname($ARGV);
- sub path2modname {
- local $_ = shift;
- s/\.p(m|od)$//;
- s-.*?/(lib|ext)/--;
- s-/-::-g;
- s/(\w+)::\1/$1/;
- return $_;
- }
- unitem(); unhead2();
- print "\n \n\n=head2 ";
+ unitem();
+ unhead2();
+ output "\n \n\n=head2 ";
$_ = <>;
if ( /^\s*$pod\b/ ) {
- print;
+ s/$pod\.pm/$pod/; # '.pm' in NAME !?
+ output $_;
} else {
s/^/$pod, /;
- print;
- }
+ output $_;
+ }
next;
}
if (s/^=head1 (.*)/=item $1/) {
unitem(); unhead2();
- print; nl(); next;
- }
+ output $_; nl(); next;
+ }
if (s/^=head2 (.*)/=item $1/) {
unitem();
- print "=over\n\n" unless $inhead2;
+ output "=over\n\n" unless $inhead2;
$inhead2 = 1;
- print; nl(); next;
+ output $_; nl(); next;
- }
+ }
if (s/^=item (.*)\n/$1/) {
next if $pod eq 'perldiag';
s/^\s*\*\s*$// && next;
@@ -179,31 +177,62 @@ sub podset {
next if /^[\d.]+$/;
next if $pod eq 'perlmod' && /^ftp:/;
##print "=over\n\n" unless $initem;
- print ", " if $initem;
+ output ", " if $initem;
$initem = 1;
s/\.$//;
- print; next;
- }
- }
+ s/^-X\b/-I<X>/;
+ output $_; next;
+ }
+ }
+}
-}
+sub path2modname {
+ local $_ = shift;
+ s/\.p(m|od)$//;
+ s-.*?/(lib|ext)/--;
+ s-/-::-g;
+ s/(\w+)::\1/$1/;
+ return $_;
+}
sub unhead2 {
if ($inhead2) {
- print "\n\n=back\n\n";
- }
- $inhead2 = 0;
- $initem = 0;
-}
+ output "\n\n=back\n\n";
+ }
+ $inhead2 = 0;
+ $initem = 0;
+}
sub unitem {
if ($initem) {
- print "\n\n";
+ output "\n\n";
##print "\n\n=back\n\n";
- }
+ }
$initem = 0;
-}
+}
sub nl {
- print "\n";
-}
+ output "\n";
+}
+
+my $NEWLINE; # how many newlines have we seen recently
+my $LINE; # what remains to be printed
+
+sub output ($) {
+ for (split /(\n)/, shift) {
+ if ($_ eq "\n") {
+ if ($LINE) {
+ print wrap('', '', $LINE);
+ $LINE = '';
+ }
+ if ($NEWLINE < 2) {
+ print;
+ $NEWLINE++;
+ }
+ }
+ elsif (/\S/ && length) {
+ $LINE .= $_;
+ $NEWLINE = 0;
+ }
+ }
+}
diff --git a/pod/perldebug.pod b/pod/perldebug.pod
index 5d67ba41a6..77502f27d3 100644
--- a/pod/perldebug.pod
+++ b/pod/perldebug.pod
@@ -251,29 +251,11 @@ Delete all installed breakpoints.
Set an action to be done before the line is executed.
The sequence of steps taken by the debugger is
-=over 3
-
-=item 1
-
-check for a breakpoint at this line
-
-=item 2
-
-print the line if necessary (tracing)
-
-=item 3
-
-do any actions associated with that line
-
-=item 4
-
-prompt user if at a breakpoint or in single-step
-
-=item 5
-
-evaluate line
-
-=back
+ 1. check for a breakpoint at this line
+ 2. print the line if necessary (tracing)
+ 3. do any actions associated with that line
+ 4. prompt user if at a breakpoint or in single-step
+ 5. evaluate line
For example, this will print out C<$foo> every time line
53 is passed:
@@ -452,6 +434,8 @@ corresponds to F</dev/ttyc>, say, by issuing a command like
See L<"Debugger Internals"> below for more details.
+=over 12
+
=item E<lt> [ command ]
Set an action (Perl command) to happen before every debugger prompt.
diff --git a/pod/perldiag.pod b/pod/perldiag.pod
index 6e4a3cf6c9..a9bdb9b1d3 100644
--- a/pod/perldiag.pod
+++ b/pod/perldiag.pod
@@ -2363,12 +2363,12 @@ L<perlref> for more on this.
(W) A copy of the object returned from C<tie> (or C<tied>) was still
valid when C<untie> was called.
-=item Value of %s may be "0"; use "defined"
+=item Value of %s construct can be "0"; test with defined()
(W) In a conditional expression, you used <HANDLE>, <*> (glob), or
-C<readdir> as a boolean value. Each of these operators may return a
+C<readdir> as a boolean value. Each of these constructs can return a
value of "0"; that would make the conditional expression false, which
-is probably not what you intended. So, when using these operators in
+is probably not what you intended. When using these constructs in
conditional expressions, test their values with the C<defined> operator.
=item Variable "%s" is not exported
diff --git a/pod/perlembed.pod b/pod/perlembed.pod
index 30c6e0a0a7..e55ee633c9 100644
--- a/pod/perlembed.pod
+++ b/pod/perlembed.pod
@@ -51,6 +51,8 @@ L<Fiddling with the Perl stack from your C program>
L<Maintaining a persistent interpreter>
+L<Maintaining multiple interpreter instances>
+
L<Using Perl modules, which themselves use C libraries, from your C program>
This documentation is UNIX specific.
@@ -126,7 +128,6 @@ In a sense, perl (the C program) is a good example of embedding Perl
from the source distribution. Here's a bastardized, non-portable version of
I<miniperlmain.c> containing the essentials of embedding:
- #include <stdio.h>
#include <EXTERN.h> /* from the Perl distribution */
#include <perl.h> /* from the Perl distribution */
@@ -173,12 +174,12 @@ calling I<perl_run()>.
=head2 Calling a Perl subroutine from your C program
-To call individual Perl subroutines, you'll need to remove the call to
-I<perl_run()> and replace it with a call to I<perl_call_argv()>.
+To call individual Perl subroutines, you can use any of the B<perl_call_*>
+functions documented in the L<perlcall> man page.
+In this example we'll use I<perl_call_argv>.
That's shown below, in a program I'll call I<showtime.c>.
- #include <stdio.h>
#include <EXTERN.h>
#include <perl.h>
@@ -186,13 +187,16 @@ That's shown below, in a program I'll call I<showtime.c>.
int main(int argc, char **argv, char **env)
{
+ char *args[] = { NULL };
my_perl = perl_alloc();
perl_construct(my_perl);
perl_parse(my_perl, NULL, argc, argv, NULL);
- /*** This replaces perl_run() ***/
- perl_call_argv("showtime", G_DISCARD | G_NOARGS, argv);
+ /*** skipping perl_run() ***/
+
+ perl_call_argv("showtime", G_DISCARD | G_NOARGS, args);
+
perl_destruct(my_perl);
perl_free(my_perl);
}
@@ -220,8 +224,15 @@ yielding the number of seconds that elapsed between January 1, 1970
(the beginning of the UNIX epoch), and the moment I began writing this
sentence.
-If you want to pass some arguments to the Perl subroutine, or
-you want to access the return value, you'll need to manipulate the
+Note that in this particular case we are not required to call I<perl_run>,
+however, in general it's considered good practice to ensure proper
+initialization of library code including execution of all object C<DESTROY>
+methods and package C<END {}> blocks.
+
+If you want to pass some arguments to the Perl subroutine, you may add
+strings to the C<NULL> terminated C<args> list passed to I<perl_call_argv>.
+In order to pass arguments of another data type and/or examine return values
+of the subroutine you'll need to manipulate the
Perl stack, demonstrated in the last section of this document:
L<Fiddling with the Perl stack from your C program>
@@ -235,15 +246,14 @@ flag to L<perlguts/perl_eval_sv>.
Arguably, this is the only routine you'll ever need to execute
snippets of Perl code from within your C program. Your string can be
as long as you wish; it can contain multiple statements; it can
-use L<perlfunc/require> or L<perlfunc/do> to include external Perl
-files.
+include L<perlfunc/use>, L<perlfunc/require> and L<perlfunc/do> to
+include external Perl files.
Our I<perl_eval()> lets us evaluate individual Perl strings, and then
extract variables for coercion into C types. The following program,
I<string.c>, executes three Perl strings, extracting an C<int> from
the first, a C<float> from the second, and a C<char *> from the third.
- #include <stdio.h>
#include <EXTERN.h>
#include <perl.h>
@@ -263,7 +273,7 @@ the first, a C<float> from the second, and a C<char *> from the third.
perl_construct( my_perl );
perl_parse(my_perl, NULL, 3, embedding, NULL);
-
+ perl_run(my_perl);
/** Treat $a as an integer **/
perl_eval("$a = 3; $a **= 2");
printf("a = %d\n", SvIV(perl_get_sv("a", FALSE)));
@@ -320,7 +330,6 @@ returning the number of matches found.
Here's a sample program, I<match.c>, that uses all three (long lines have
been wrapped here):
- #include <stdio.h>
#include <EXTERN.h>
#include <perl.h>
static PerlInterpreter *my_perl;
@@ -339,7 +348,7 @@ been wrapped here):
char *command;
command = malloc(sizeof(char) * strlen(string) + strlen(pattern) + 37);
sprintf(command, "$string = '%s'; $return = $string =~ %s",
- string, pattern);
+ string, pattern);
perl_eval(command);
free(command);
return SvIV(perl_get_sv("return", FALSE));
@@ -357,11 +366,11 @@ been wrapped here):
STRLEN length;
command = malloc(sizeof(char) * strlen(*string) + strlen(pattern) + 35);
sprintf(command, "$string = '%s'; $ret = ($string =~ %s)",
- *string, pattern);
- perl_eval(command);
- free(command);
- *string = SvPV(perl_get_sv("string", FALSE), length);
- return SvIV(perl_get_sv("ret", FALSE));
+ *string, pattern);
+ perl_eval(command);
+ free(command);
+ *string = SvPV(perl_get_sv("string", FALSE), length);
+ return SvIV(perl_get_sv("ret", FALSE));
}
/** matches(string, pattern, matches)
**
@@ -380,7 +389,7 @@ been wrapped here):
int i;
command = malloc(sizeof(char) * strlen(string) + strlen(pattern) + 38);
sprintf(command, "$string = '%s'; @array = ($string =~ %s)",
- string, pattern);
+ string, pattern);
perl_eval(command);
free(command);
array = perl_get_av("array", FALSE);
@@ -401,6 +410,8 @@ been wrapped here):
my_perl = perl_alloc();
perl_construct( my_perl );
perl_parse(my_perl, NULL, 3, embedding, NULL);
+ perl_run(my_perl);
+
text = (char *) malloc(sizeof(char) * 486); /** A long string follows! **/
sprintf(text, "%s", "When he is at a convenience store and the bill \
comes to some amount like 76 cents, Maynard is aware that there is \
@@ -432,7 +443,7 @@ been wrapped here):
num_matches = substitute(&text, "s/[aeiou]//gi");
if (num_matches) {
printf("substitute: s/[aeiou]//gi...%d substitutions made.\n",
- num_matches);
+ num_matches);
printf("Now text is: %s\n\n", text);
}
/** Attempt a substitution **/
@@ -496,7 +507,6 @@ I<PerlPower()> that contains all the perlguts necessary to push the
two arguments into I<expo()> and to pop the return value out. Take a
deep breath...
- #include <stdio.h>
#include <EXTERN.h>
#include <perl.h>
@@ -532,6 +542,7 @@ deep breath...
sprintf(my_argv[1], "power.pl");
perl_parse(my_perl, NULL, argc, my_argv, NULL);
+ perl_run(my_perl);
PerlPower(3, 4); /*** Compute 3 ** 4 ***/
@@ -613,7 +624,7 @@ reduce symbol table growth.
my ($stem, $leaf);
no strict 'refs';
- $pkg = "main::$pkg\::"; # expand to full symbol table name
+ $pkg = "main::$pkg\::"; # expand to full symbol table name
($stem, $leaf) = $pkg =~ m/(.*::)(\w+::)$/;
my $stem_symtab = *{$stem}{HASH};
@@ -629,28 +640,28 @@ reduce symbol table growth.
&&
$Cache{$package}{mtime} <= $mtime)
{
- # we have compiled this subroutine already,
- # it has not been updated on disk, nothing left to do
- print STDERR "already compiled $package->handler\n";
+ # we have compiled this subroutine already,
+ # it has not been updated on disk, nothing left to do
+ print STDERR "already compiled $package->handler\n";
}
else {
- local *FH;
- open FH, $filename or die "open '$filename' $!";
- local($/) = undef;
- my $sub = <FH>;
- close FH;
+ local *FH;
+ open FH, $filename or die "open '$filename' $!";
+ local($/) = undef;
+ my $sub = <FH>;
+ close FH;
- #wrap the code into a subroutine inside our unique package
- my $eval = qq{package $package; sub handler { $sub; }};
- {
- # hide our variables within this block
- my($r,$filename,$mtime,$package,$sub);
- eval $eval;
- }
- die $@ if $@;
+ #wrap the code into a subroutine inside our unique package
+ my $eval = qq{package $package; sub handler { $sub; }};
+ {
+ # hide our variables within this block
+ my($filename,$mtime,$package,$sub);
+ eval $eval;
+ }
+ die $@ if $@;
- #cache it unless we're cleaning out each time
- $Cache{$package}{mtime} = $mtime unless $delete;
+ #cache it unless we're cleaning out each time
+ $Cache{$package}{mtime} = $mtime unless $delete;
}
eval {$package->handler;};
@@ -686,27 +697,27 @@ reduce symbol table growth.
int exitstatus = 0;
if((perl = perl_alloc()) == NULL) {
- fprintf(stderr, "no memory!");
- exit(1);
+ fprintf(stderr, "no memory!");
+ exit(1);
}
perl_construct(perl);
exitstatus = perl_parse(perl, NULL, 2, embedding, NULL);
if(!exitstatus) {
- exitstatus = perl_run(perl);
+ exitstatus = perl_run(perl);
- while(printf("Enter file name: ") && gets(filename)) {
+ while(printf("Enter file name: ") && gets(filename)) {
- /* call the subroutine, passing it the filename as an argument */
- args[0] = filename;
- perl_call_argv("Embed::Persistent::eval_file",
- G_DISCARD | G_EVAL, args);
+ /* call the subroutine, passing it the filename as an argument */
+ args[0] = filename;
+ perl_call_argv("Embed::Persistent::eval_file",
+ G_DISCARD | G_EVAL, args);
- /* check $@ */
- if(SvTRUE(GvSV(errgv)))
- fprintf(stderr, "eval error: %s\n", SvPV(GvSV(errgv),na));
- }
+ /* check $@ */
+ if(SvTRUE(GvSV(errgv)))
+ fprintf(stderr, "eval error: %s\n", SvPV(GvSV(errgv),na));
+ }
}
perl_destruct_level = 0;
@@ -740,6 +751,104 @@ Now run:
foo says: hello
Enter file name: ^C
+=head2 Maintaining multiple interpreter instances
+
+The previous examples have gone through several steps to startup, use and
+shutdown an embedded Perl interpreter. Certain applications may require
+more than one instance of an interpreter to be created during the lifespan
+of a single process. Such an application may take different approaches in
+it's use of interpreter objects. For example, a particular transaction may
+want to create an interpreter instance, then release any resources associated
+with the object once the transaction is completed. When a single process
+does this once, resources are released upon exit of the program and the next
+time it starts, the interpreter's global state is fresh.
+
+In the same process, the program must take care to ensure that these
+actions take place before constructing a new interpreter. By default, the
+global variable C<perl_destruct_level> is set to C<0> since extra cleaning
+is not needed when a program constructs a single interpreter, such as the
+perl executable itself in C</usr/bin/perl> or some such.
+
+You can tell Perl to make everything squeeky clean by setting
+C<perl_destruct_level> to C<1>.
+
+ perl_destruct_level = 1; /* perl global variable */
+ while(1) {
+ ...
+ /* reset global variables here with perl_destruct_level = 1 */
+ perl_contruct(my_perl);
+ ...
+ /* clean and reset _everything_ during perl_destruct */
+ perl_destruct(my_perl); /* ah, nice and fresh */
+ perl_free(my_perl);
+ ...
+ /* let's go do it again! */
+ }
+
+Now, when I<perl_destruct()> is called, the interpreter's syntax parsetree
+and symbol tables are cleaned out, along with reseting global variables.
+
+So, we've seen how to startup and shutdown an interpreter more than once
+in the same process, but there was only one instance in existance at any
+one time. Hmm, wonder if we can have more than one interpreter instance
+running at the _same_ time?
+Indeed this is possible, however when you build Perl, you must compile with
+C<-DMULTIPLICITY>.
+
+It's a little tricky for the Perl runtime to handle multiple interpreters,
+introducing some overhead that most programs with a single interpreter don't
+get burdened with. When you compile with C<-DMULTIPLICITY>, by default,
+C<perl_destruct_level> is set to C<1> for each interpreter.
+
+Let's give it a try:
+
+
+ #include <EXTERN.h>
+ #include <perl.h>
+
+
+ /* we're going to embed two interpreters */
+ /* we're going to embed two interpreters */
+
+
+ #define SAY_HELLO "-e", "print qq(Hi, I'm $^X\n)"
+
+
+ int main(int argc, char **argv, char **env)
+ {
+ PerlInterpreter
+ *one_perl = perl_alloc(),
+ *two_perl = perl_alloc();
+ char *one_args[] = { "one_perl", SAY_HELLO };
+ char *two_args[] = { "two_perl", SAY_HELLO };
+
+ perl_construct(one_perl);
+ perl_construct(two_perl);
+
+ perl_parse(one_perl, NULL, 3, one_args, (char **)NULL);
+ perl_parse(two_perl, NULL, 3, two_args, (char **)NULL);
+
+ perl_run(one_perl);
+ perl_run(two_perl);
+
+ perl_destruct(one_perl);
+ perl_destruct(two_perl);
+
+ perl_free(one_perl);
+ perl_free(two_perl);
+ }
+
+
+Compile as usual:
+
+ % cc -o multiplicity multiplicity.c `perl -MExtUtils::Embed -e ccopts -e ldopts`
+
+Run it, Run it:
+
+ % multiplicity
+ Hi, I'm one_perl
+ Hi, I'm two_perl
+
=head2 Using Perl modules, which themselves use C libraries, from your C program
If you've played with the examples above and tried to embed a script
diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod
index c39dd29298..62a196595a 100644
--- a/pod/perlfunc.pod
+++ b/pod/perlfunc.pod
@@ -56,9 +56,7 @@ Remember the following rule:
=over 8
-=item
-
-I<THERE IS NO GENERAL RULE FOR CONVERTING A LIST INTO A SCALAR!>
+=item I<THERE IS NO GENERAL RULE FOR CONVERTING A LIST INTO A SCALAR!>
=back
@@ -1029,14 +1027,35 @@ value is taken as the name of the filehandle.
=item flock FILEHANDLE,OPERATION
-Calls flock(2) on FILEHANDLE. See L<flock(2)> for definition of
-OPERATION. Returns TRUE for success, FALSE on failure. Will produce a
-fatal error if used on a machine that doesn't implement either flock(2) or
-fcntl(2). The fcntl(2) system call will be automatically used if flock(2)
-is missing from your system. This makes flock() the portable file locking
-strategy, although it will lock only entire files, not records. Note also
-that some versions of flock() cannot lock things over the network; you
-would need to use the more system-specific fcntl() for that.
+Calls flock(2), or an emulation of it, on FILEHANDLE. Returns TRUE for
+success, FALSE on failure. Will produce a fatal error if used on a
+machine that doesn't implement flock(2), fcntl(2) locking, or lockf(3).
+flock() is Perl's portable file locking interface, although it will lock
+only entire files, not records.
+
+OPERATION is one of LOCK_SH, LOCK_EX, or LOCK_UN, possibly combined with
+LOCK_NB. These constants are traditionally valued 1, 2, 8 and 4, but
+you can use the symbolic names if you pull them in with an explicit
+request to the Fcntl module. The names can be requested as a group with
+the :flock tag (or they can be requested individually, of course).
+LOCK_SH requests a shared lock, LOCK_EX requests an exclusive lock, and
+LOCK_UN releases a previously requested lock. If LOCK_NB is added to
+LOCK_SH or LOCK_EX then flock() will return immediately rather than
+blocking waiting for the lock (check the return status to see if you got
+it).
+
+Note that the emulation built with lockf(3) doesn't provide shared
+locks, and it requires that FILEHANDLE be open with write intent. These
+are the semantics that lockf(3) implements. Most (all?) systems
+implement lockf(3) in terms of fcntl(2) locking, though, so the
+differing semantics shouldn't bite too many people.
+
+Note also that some versions of flock() cannot lock things over the
+network; you would need to use the more system-specific fcntl() for
+that. If you like you can force Perl to ignore your system's flock(2)
+function, and so provide its own fcntl(2)-based emulation, by passing
+the switch C<-Ud_flock> to the F<Configure> program when you configure
+perl.
Here's a mailbox appender for BSD systems.
diff --git a/pod/perlguts.pod b/pod/perlguts.pod
index a7fd91231c..a3ae46588e 100644
--- a/pod/perlguts.pod
+++ b/pod/perlguts.pod
@@ -90,7 +90,7 @@ which will determine if more memory needs to be allocated. If so, it will
call the function C<sv_grow>. Note that C<SvGROW> can only increase, not
decrease, the allocated memory of an SV and that it does not automatically
add a byte for the a trailing NUL (perl's own string functions typically do
-SvGROW(sv, len + 1)).
+C<SvGROW(sv, len + 1)>).
If you have an SV and want to know what kind of data Perl thinks is stored
in it, you can use the following macros to check the type of SV you have.
@@ -312,7 +312,7 @@ by using the following:
This returns NULL if the variable does not exist.
-The hash algorithm is defined in the PERL_HASH(hash, key, klen) macro:
+The hash algorithm is defined in the C<PERL_HASH(hash, key, klen)> macro:
i = klen;
hash = 0;
@@ -384,26 +384,24 @@ for information on converting class names into stashes.
/* Still under construction */
Upgrades rv to reference if not already one. Creates new SV for rv to
-point to.
-If classname is non-null, the SV is blessed into the specified class.
-SV is returned.
+point to. If C<classname> is non-null, the SV is blessed into the specified
+class. SV is returned.
SV* newSVrv(SV* rv, char* classname);
-Copies integer or double into an SV whose reference is rv. SV is blessed
-if classname is non-null.
+Copies integer or double into an SV whose reference is C<rv>. SV is blessed
+if C<classname> is non-null.
SV* sv_setref_iv(SV* rv, char* classname, IV iv);
SV* sv_setref_nv(SV* rv, char* classname, NV iv);
Copies the pointer value (I<the address, not the string!>) into an SV whose
-reference is rv. SV is blessed if classname is non-null.
+reference is rv. SV is blessed if C<classname> is non-null.
SV* sv_setref_pv(SV* rv, char* classname, PV iv);
-Copies string into an SV whose reference is rv.
-Set length to 0 to let Perl calculate the string length.
-SV is blessed if classname is non-null.
+Copies string into an SV whose reference is C<rv>. Set length to 0 to let
+Perl calculate the string length. SV is blessed if C<classname> is non-null.
SV* sv_setref_pvn(SV* rv, char* classname, PV iv, int length);
@@ -917,7 +915,7 @@ For a complete description of the PerlIO abstraction, consult L<perlapio>.
=head2 Scratchpads
-=head3 Putting a C value on Perl stack
+=head2 Putting a C value on Perl stack
A lot of opcodes (this is an elementary operation in the internal perl
stack machine) put an SV* on the stack. However, as an optimization
@@ -934,7 +932,7 @@ The macro to put this target on stack is C<PUSHTARG>, and it is
directly used in some opcodes, as well as indirectly in zillions of
others, which use it via C<(X)PUSH[pni]>.
-=head3 Scratchpads
+=head2 Scratchpads
The question remains on when the SV's which are I<target>s for opcodes
are created. The answer is that they are created when the current unit --
@@ -952,7 +950,7 @@ The correspondence between OP's and I<target>s is not 1-to-1. Different
OP's in the compile tree of the unit can use the same target, if this
would not conflict with the expected life of the temporary.
-=head3 Scratchpads and recursions
+=head2 Scratchpads and recursions
In fact it is not 100% true that a compiled unit contains a pointer to
the scratchpad AV. In fact it contains a pointer to an AV of
@@ -1535,6 +1533,7 @@ Creates a new SV for the RV, C<rv>, to point to. If C<rv> is not an RV then
it will be upgraded to one. If C<classname> is non-null then the new SV will
be blessed in the specified package. The new SV is returned and its
reference count is 1.
+
SV* newSVrv _((SV* rv, char* classname));
=item newSVsv
@@ -2590,4 +2589,4 @@ API Listing by Dean Roehrich <roehrich@cray.com>.
=head1 DATE
-Version 27: 1996/12/24
+Version 28: 1996/12/27
diff --git a/pod/perlsec.pod b/pod/perlsec.pod
index 69de8592b6..2324b8a373 100644
--- a/pod/perlsec.pod
+++ b/pod/perlsec.pod
@@ -44,6 +44,9 @@ For example:
$arg = shift; # $arg is tainted
$hid = $arg, 'bar'; # $hid is also tainted
$line = <>; # Tainted
+ $line = <STDIN>; # Also tainted
+ open FOO, "/home/me/bar" or die $!;
+ $line = <FOO>; # Still tainted
$path = $ENV{'PATH'}; # Tainted, but see below
$data = 'abc'; # Not tainted
diff --git a/pod/perltoc.pod b/pod/perltoc.pod
index 8cac0fa7af..96cf9f97bf 100644
--- a/pod/perltoc.pod
+++ b/pod/perltoc.pod
@@ -6,220 +6,231 @@ perltoc - perl documentation table of contents
=head1 DESCRIPTION
This page provides a brief table of contents for the rest of the Perl
-documentation set. It is meant to be scanned quickly or grepped
+documentation set. It is meant to be bescanned quickly or grepped
through to locate the proper section you're looking for.
=head1 BASIC DOCUMENTATION
-
-
-
=head2 perl - Practical Extraction and Report Language
=item SYNOPSIS
-
=item DESCRIPTION
-
Many usability enhancements, Simplified grammar, Lexical scoping,
Arbitrarily nested data structures, Modularity and reusability,
-Object-oriented programming, Embeddable and Extensible, POSIX
-compliant, Package constructors and destructors, Multiple simultaneous
-DBM implementations, Subroutine definitions may now be autoloaded,
-Regular expression enhancements
+Object-oriented programming, Embeddable and Extensible, POSIX compliant,
+Package constructors and destructors, Multiple simultaneous DBM
+implementations, Subroutine definitions may now be autoloaded, Regular
+expression enhancements, Innumerable Unbundled Modules, Compilability
=item ENVIRONMENT
-
-HOME, LOGDIR, PATH, PERL5LIB, PERL5DB, PERLLIB
+HOME, LOGDIR, PATH, PERL5LIB, PERL5DB, PERL_DESTRUCT_LEVEL, PERLLIB
=item AUTHOR
-
=item FILES
-
=item SEE ALSO
-
=item DIAGNOSTICS
-
=item BUGS
-
=item NOTES
+=head2 perlnews - what's new for perl5.004
+=item DESCRIPTION
+=item Supported Environments
+=item Core Changes
-=head2 perldata - Perl data types
+=over
-=item DESCRIPTION
+=item Compilation Option: Binary Compatibility With 5.003
+=item New Opcode Module and Revised Safe Module
-=over
+=item Internal Change: FileHandle Deprecated
-=item Variable names
+=item Internal Change: PerlIO internal IO abstraction interface.
+=item New and Changed Built-in Variables
-=item Context
+$^E, $^H, $^M
+=item New and Changed Built-in Functions
-=item Scalar values
+delete on slices, flock, keys as an lvalue, my() in Control Structures,
+unpack() and pack(), use VERSION, use Module VERSION LIST,
+prototype(FUNCTION), $_ as Default
+=item New Built-in Methods
-=item Scalar value constructors
+isa(CLASS), can(METHOD), VERSION( [NEED] ), class(), is_instance()
+=item TIEHANDLE Now Supported
-=item List value constructors
+TIEHANDLE classname, LIST, PRINT this, LIST, READLINE this, DESTROY this
+
+=back
+
+=item Pragmata
+
+use blib, use locale, use ops
+=item Modules
-=item Typeglobs and FileHandles
+=over
+
+=item Module Information Summary
+=item IO
+=item Math::Complex
+=item Overridden Built-ins
=back
+=item Efficiency Enhancements
+=item Documentation Changes
+L<perlnews>, L<perllocale>, L<perltoot>, L<perlapio>, L<perldebug>,
+L<perlsec>
-=head2 perlsyn - Perl syntax
+=item New Diagnostics
-=item DESCRIPTION
+"my" variable %s masks earlier declaration in same scope, Allocation too
+large: %lx, Allocation too large, Attempt to free non-existent shared
+string, Attempt to use reference as lvalue in substr, Unsupported function
+fork, Ill-formed logical name |%s| in prime_env_iter, Integer overflow in
+hex number, Integer overflow in octal number, Null picture in formline,
+Offset outside string, Out of memory!, Out of memory during request for %s,
+Possible attempt to put comments in qw() list, Possible attempt to separate
+words with commas, untie attempted while %d inner references still exist,
+Got an error from DosAllocMem:, Malformed PERLLIB_PREFIX, PERL_SH_DIR too
+long, Process terminated by SIG%s
+=item BUGS
-=over
+=item SEE ALSO
-=item Declarations
+=item HISTORY
+=head2 perldata - Perl data types
-=item Simple statements
+=item DESCRIPTION
+=over
-=item Compound statements
+=item Variable names
+=item Context
-=item Loop Control
+=item Scalar values
+=item Scalar value constructors
-=item For Loops
+=item List value constructors
+=item Typeglobs and Filehandles
-=item Foreach Loops
+=back
+=head2 perlsyn - Perl syntax
-=item Basic BLOCKs and Switch Statements
+=item DESCRIPTION
+=over
-=item Goto
+=item Declarations
+=item Simple statements
-=item PODs: Embedded Documentation
+=item Compound statements
+=item Loop Control
+=item For Loops
+=item Foreach Loops
-=back
+=item Basic BLOCKs and Switch Statements
+=item Goto
+=item PODs: Embedded Documentation
+=back
=head2 perlop - Perl operators and precedence
=item SYNOPSIS
-
=item DESCRIPTION
-
=over
=item Terms and List Operators (Leftward)
-
=item The Arrow Operator
-
=item Auto-increment and Auto-decrement
-
=item Exponentiation
-
=item Symbolic Unary Operators
-
=item Binding Operators
-
=item Multiplicative Operators
-
=item Additive Operators
-
=item Shift Operators
-
=item Named Unary Operators
-
=item Relational Operators
-
=item Equality Operators
-
=item Bitwise And
-
=item Bitwise Or and Exclusive Or
-
=item C-style Logical And
-
=item C-style Logical Or
-
=item Range Operator
-
=item Conditional Operator
-
=item Assignment Operators
-
=item Comma Operator
-
=item List Operators (Rightward)
-
=item Logical Not
-
=item Logical And
-
=item Logical or and Exclusive Or
-
=item C Operators Missing From Perl
-
unary &, unary *, (TYPE)
=item Quote and Quote-like Operators
-
-=item Regexp Quote-like Operators
-
+=item Regexp Quote-Like Operators
?PATTERN?, m/PATTERN/gimosx, /PATTERN/gimosx, q/STRING/, C<'STRING'>,
qq/STRING/, "STRING", qx/STRING/, `STRING`, qw/STRING/,
@@ -228,2937 +239,3254 @@ y/SEARCHLIST/REPLACEMENTLIST/cds
=item I/O Operators
-
=item Constant Folding
-
=item Integer Arithmetic
-
-
-
=back
-
-
-
=head2 perlre - Perl regular expressions
=item DESCRIPTION
-
i, m, s, x
=over
=item Regular Expressions
-
(?#text), (?:regexp), (?=regexp), (?!regexp), (?imsx)
=item Backtracking
-
=item Version 8 Regular Expressions
-
=item WARNING on \1 vs $1
-
-
-
=back
-
-
-
=head2 perlrun - how to execute the Perl interpreter
=item SYNOPSIS
-
=item DESCRIPTION
-
=over
=item Switches
-
-B<-0>I<digits>, B<-a>, B<-c>, B<-d>, B<-d:foo>, B<-D>I<number>,
-B<-D>I<list>, B<-e> I<commandline>, B<-F>I<regexp>, B<-i>I<extension>,
-B<-I>I<directory>, B<-l>I<octnum>, B<-m>I<module>, B<-M>I<module>,
-B<-n>, B<-p>, B<-P>, B<-s>, B<-S>, B<-T>, B<-u>, B<-U>, B<-v>, B<-V>,
-B<-V:name>, B<-w>, B<-x> I<directory>
-
-
+B<-0>[I<digits>], B<-a>, B<-c>, B<-d>, B<-d:>I<foo>, B<-D>I<number>,
+B<-D>I<list>, B<-e> I<commandline>, B<-F>I<pattern>, B<-h>,
+B<-i>[I<extension>], B<-I>I<directory>, B<-l>[I<octnum>],
+B<-m>[B<->]I<module>, B<-M>[B<->]I<module>, B<-M>[B<->]I<'module ...'>,
+B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>, B<-p>, B<-P>, B<-s>, B<-S>,
+B<-T>, B<-u>, B<-U>, B<-v>, B<-V>, B<-V:>I<name>, B<-w>, B<-x> I<directory>
=back
-
-
-
=head2 perlfunc - Perl builtin functions
=item DESCRIPTION
-
-
+ I<THERE IS NO GENERAL RULE FOR CONVERTING A LIST INTO A SCALAR!>
=over
=item Perl Functions by Category
-
-Functions for SCALARs or strings, Regular expressions and pattern
-matching, Numeric functions, Functions for real @ARRAYs, Functions for
-list data, Functions for real %HASHes, Input and output functions,
-Functions for fixed length data or records, Functions for filehandles,
-files, or directories, Keywords related to the control flow of your
-perl program, Keywords related to scoping, Miscellaneous functions,
-Functions for processes and process groups, Keywords related to perl
-modules, Keywords related to classes and object-orientedness, Low-level
-socket functions, System V interprocess communication functions,
-Fetching user and group info, Fetching network info, Time-related
-functions
+Functions for SCALARs or strings, Regular expressions and pattern matching,
+Numeric functions, Functions for real @ARRAYs, Functions for list data,
+Functions for real %HASHes, Input and output functions, Functions for fixed
+length data or records, Functions for filehandles, files, or directories,
+Keywords related to the control flow of your perl program, Keywords related
+to scoping, Miscellaneous functions, Functions for processes and process
+groups, Keywords related to perl modules, Keywords related to classes and
+object-orientedness, Low-level socket functions, System V interprocess
+communication functions, Fetching user and group info, Fetching network
+info, Time-related functions, Functions new in perl5, Functions obsoleted
+in perl5
=item Alphabetical Listing of Perl Functions
-
--I<X> FILEHANDLE, -I<X> EXPR, -I<X>, abs VALUE, accept NEWSOCKET,GENERICSOCKET,
-alarm SECONDS, atan2 Y,X, bind SOCKET,NAME, binmode FILEHANDLE, bless
-REF,CLASSNAME, bless REF, caller EXPR, caller, chdir EXPR, chmod LIST,
-chomp VARIABLE, chomp LIST, chomp, chop VARIABLE, chop LIST, chop,
-chown LIST, chr NUMBER, chroot FILENAME, close FILEHANDLE, closedir
-DIRHANDLE, connect SOCKET,NAME, continue BLOCK, cos EXPR, crypt
-PLAINTEXT,SALT, dbmclose ASSOC_ARRAY, dbmopen ASSOC,DBNAME,MODE,
-defined EXPR, delete EXPR, die LIST, do BLOCK, do SUBROUTINE(LIST), do
-EXPR, dump LABEL, each ASSOC_ARRAY, eof FILEHANDLE, eof (), eof, eval
-EXPR, eval BLOCK, exec LIST, exists EXPR, exit EXPR, exp EXPR, fcntl
-FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock
+-I<X> FILEHANDLE, -I<X> EXPR, -I<X>, abs VALUE, abs, accept
+NEWSOCKET,GENERICSOCKET, alarm SECONDS, alarm, atan2 Y,X, bind SOCKET,NAME,
+binmode FILEHANDLE, bless REF,CLASSNAME, bless REF, caller EXPR, caller,
+chdir EXPR, chmod LIST, chomp VARIABLE, chomp LIST, chomp, chop VARIABLE,
+chop LIST, chop, chown LIST, chr NUMBER, chr, chroot FILENAME, chroot,
+close FILEHANDLE, closedir DIRHANDLE, connect SOCKET,NAME, continue BLOCK,
+cos EXPR, crypt PLAINTEXT,SALT, dbmclose ASSOC_ARRAY, dbmopen
+ASSOC,DBNAME,MODE, defined EXPR, defined, delete EXPR, die LIST, do BLOCK,
+do SUBROUTINE(LIST), do EXPR, dump LABEL, each ASSOC_ARRAY, eof FILEHANDLE,
+eof (), eof, eval EXPR, eval BLOCK, exec LIST, exists EXPR, exit EXPR, exp
+EXPR, exp, fcntl FILEHANDLE,FUNCTION,SCALAR, fileno FILEHANDLE, flock
FILEHANDLE,OPERATION, fork, format, formline PICTURE, LIST, getc
FILEHANDLE, getc, getlogin, getpeername SOCKET, getpgrp PID, getppid,
-getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, gethostbyname
-NAME, getnetbyname NAME, getprotobyname NAME, getpwuid UID, getgrgid
-GID, getservb
-
-
+getpriority WHICH,WHO, getpwnam NAME, getgrnam NAME, gethostbyname NAME,
+getnetbyname NAME, getprotobyname NAME, getpwuid UID, getgrgid GID,
+getservbyname NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE, getnetbyaddr
+ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent,
+getgrent, gethostent, getnetent, getprotoent, getservent, setpwent,
+setgrent, sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN,
+setservent STAYOPEN, endpwent, endgrent, endhostent, endnetent,
+endprotoent, endservent, getsockname SOCKET, getsockopt
+SOCKET,LEVEL,OPTNAME, glob EXPR, gmtime EXPR, goto LABEL, goto EXPR, goto
+&NAME, grep BLOCK LIST, grep EXPR,LIST, hex EXPR, hex, import, index
+STR,SUBSTR,POSITION, index STR,SUBSTR, int EXPR, int, ioctl
+FILEHANDLE,FUNCTION,SCALAR, join EXPR,LIST, keys ASSOC_ARRAY, kill LIST,
+last LABEL, last, lc EXPR, lc, lcfirst EXPR, lcfirst, length EXPR, length,
+link OLDFILE,NEWFILE, listen SOCKET,QUEUESIZE, local EXPR, localtime EXPR,
+log EXPR, log, lstat FILEHANDLE, lstat EXPR, lstat, m//, map BLOCK LIST,
+map EXPR,LIST, mkdir FILENAME,MODE, msgctl ID,CMD,ARG, msgget KEY,FLAGS,
+msgsnd ID,MSG,FLAGS, msgrcv ID,VAR,SIZE,TYPE,FLAGS, my EXPR, next LABEL,
+next, no Module LIST, oct EXPR, oct, open FILEHANDLE,EXPR, open FILEHANDLE,
+opendir DIRHANDLE,EXPR, ord EXPR, ord, pack TEMPLATE,LIST, package
+NAMESPACE, pipe READHANDLE,WRITEHANDLE, pop ARRAY, pos SCALAR, pos, print
+FILEHANDLE LIST, print LIST, print, printf FILEHANDLE FORMAT, LIST, printf
+FORMAT, LIST, prototype FUNCTION, push ARRAY,LIST, q/STRING/, qq/STRING/,
+qx/STRING/, qw/STRING/, quotemeta EXPR, quotemeta, rand EXPR, rand, read
+FILEHANDLE,SCALAR,LENGTH,OFFSET, read FILEHANDLE,SCALAR,LENGTH, readdir
+DIRHANDLE, readlink EXPR, readlink, recv SOCKET,SCALAR,LEN,FLAGS, redo
+LABEL, redo, ref EXPR, ref, rename OLDNAME,NEWNAME, require EXPR, require,
+reset EXPR, reset, return LIST, reverse LIST, rewinddir DIRHANDLE, rindex
+STR,SUBSTR,POSITION, rindex STR,SUBSTR, rmdir FILENAME, rmdir, s///, scalar
+EXPR, seek FILEHANDLE,POSITION,WHENCE, seekdir DIRHANDLE,POS, select
+FILEHANDLE, select, select RBITS,WBITS,EBITS,TIMEOUT, semctl
+ID,SEMNUM,CMD,ARG, semget KEY,NSEMS,FLAGS, semop KEY,OPSTRING, send
+SOCKET,MSG,FLAGS,TO, send SOCKET,MSG,FLAGS, setpgrp PID,PGRP, setpriority
+WHICH,WHO,PRIORITY, setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL, shift ARRAY,
+shift, shmctl ID,CMD,ARG, shmget KEY,SIZE,FLAGS, shmread ID,VAR,POS,SIZE,
+shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW, sin EXPR, sin, sleep
+EXPR, sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL, socketpair
+SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL, sort SUBNAME LIST, sort BLOCK LIST,
+sort LIST, splice ARRAY,OFFSET,LENGTH,LIST, splice ARRAY,OFFSET,LENGTH,
+splice ARRAY,OFFSET, split /PATTERN/,EXPR,LIMIT, split /PATTERN/,EXPR,
+split /PATTERN/, split, sprintf FORMAT, LIST, sqrt EXPR, sqrt, srand EXPR,
+stat FILEHANDLE, stat EXPR, stat, study SCALAR, study, sub BLOCK, sub NAME,
+sub NAME BLOCK, substr EXPR,OFFSET,LEN, substr EXPR,OFFSET, symlink
+OLDFILE,NEWFILE, syscall LIST, sysopen FILEHANDLE,FILENAME,MODE, sysopen
+FILEHANDLE,FILENAME,MODE,PERMS, sysread FILEHANDLE,SCALAR,LENGTH,OFFSET,
+sysread FILEHANDLE,SCALAR,LENGTH, system LIST, syswrite
+FILEHANDLE,SCALAR,LENGTH,OFFSET, syswrite FILEHANDLE,SCALAR,LENGTH, tell
+FILEHANDLE, tell, telldir DIRHANDLE, tie VARIABLE,CLASSNAME,LIST, tied
+VARIABLE, time, times, tr///, truncate FILEHANDLE,LENGTH, truncate
+EXPR,LENGTH, uc EXPR, uc, ucfirst EXPR, ucfirst, umask EXPR, umask, undef
+EXPR, undef, unlink LIST, unlink, unpack TEMPLATE,EXPR, untie VARIABLE,
+unshift ARRAY,LIST, use Module LIST, use Module, use Module VERSION LIST,
+use VERSION, utime LIST, values ASSOC_ARRAY, vec EXPR,OFFSET,BITS, wait,
+waitpid PID,FLAGS, wantarray, warn LIST, write FILEHANDLE, write EXPR,
+write, y///
=back
-
-
-
=head2 perlvar - Perl predefined variables
=item DESCRIPTION
-
=over
=item Predefined Names
-
-$ARG, $_, $<I<digit>>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
-$LAST_PAREN_MATCH, $+, $MULTILINE_MATCHING, $*, input_line_number
-HANDLE EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE
-EXPR, $INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR,
-$OUTPUT_AUTOFLUSH, $|, output_field_separator HANDLE EXPR,
-$OUTPUT_FIELD_SEPARATOR, $OFS, $,, output_record_separator HANDLE EXPR,
-$OUTPUT_RECORD_SEPARATOR, $ORS, $\, $LIST_SEPARATOR, $",
-$SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#, format_page_number HANDLE
-EXPR, $FORMAT_PAGE_NUMBER, $%, format_lines_per_page HANDLE EXPR,
-$FORMAT_LINES_PER_PAGE, $=, format_lines_left HANDLE EXPR,
-$FORMAT_LINES_LEFT, $-, format_name HANDLE EXPR, $FORMAT_NAME, $~,
-format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^,
-format_line_break_characters HANDLE EXPR,
-$FORMAT_LINE_BREAK_CHARACTERS, $:, format_formfeed HANDLE EXPR,
-$FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A, $CHILD_ERROR, $?, $OS_ERROR,
-$ERRNO, $!, $EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID,
-$UID, $<,
-
-
+$ARG, $_, $E<lt>I<digit>E<gt>, $MATCH, $&, $PREMATCH, $`, $POSTMATCH, $',
+$LAST_PAREN_MATCH, $+, $MULTILINE_MATCHING, $*, input_line_number HANDLE
+EXPR, $INPUT_LINE_NUMBER, $NR, $, input_record_separator HANDLE EXPR,
+$INPUT_RECORD_SEPARATOR, $RS, $/, autoflush HANDLE EXPR, $OUTPUT_AUTOFLUSH,
+$|, output_field_separator HANDLE EXPR, $OUTPUT_FIELD_SEPARATOR, $OFS, $,,
+output_record_separator HANDLE EXPR, $OUTPUT_RECORD_SEPARATOR, $ORS, $\,
+$LIST_SEPARATOR, $", $SUBSCRIPT_SEPARATOR, $SUBSEP, $;, $OFMT, $#,
+format_page_number HANDLE EXPR, $FORMAT_PAGE_NUMBER, $%,
+format_lines_per_page HANDLE EXPR, $FORMAT_LINES_PER_PAGE, $=,
+format_lines_left HANDLE EXPR, $FORMAT_LINES_LEFT, $-, format_name HANDLE
+EXPR, $FORMAT_NAME, $~, format_top_name HANDLE EXPR, $FORMAT_TOP_NAME, $^,
+format_line_break_characters HANDLE EXPR, $FORMAT_LINE_BREAK_CHARACTERS,
+$:, format_formfeed HANDLE EXPR, $FORMAT_FORMFEED, $^L, $ACCUMULATOR, $^A,
+$CHILD_ERROR, $?, $OS_ERROR, $ERRNO, $!, $EXTENDED_OS_ERROR, $^E,
+$EVAL_ERROR, $@, $PROCESS_ID, $PID, $$, $REAL_USER_ID, $UID, $<,
+$EFFECTIVE_USER_ID, $EUID, $>, $REAL_GROUP_ID, $GID, $(,
+$EFFECTIVE_GROUP_ID, $EGID, $), $PROGRAM_NAME, $0, $[, $PERL_VERSION, $],
+$DEBUGGING, $^D, $SYSTEM_FD_MAX, $^F, $^H, $INPLACE_EDIT, $^I, $OSNAME,
+$^O, $PERLDB, $^P, $BASETIME, $^T, $WARNING, $^W, $EXECUTABLE_NAME, $^X,
+$ARGV, @ARGV, @INC, %INC, $ENV{expr}, $SIG{expr}
=back
-
-
-
=head2 perlsub - Perl subroutines
=item SYNOPSIS
-
=item DESCRIPTION
-
=over
=item Private Variables via my()
-
=item Temporary Values via local()
-
=item Passing Symbol Table Entries (typeglobs)
-
=item Pass by Reference
-
=item Prototypes
-
=item Overriding Builtin Functions
-
=item Autoloading
-
-
-
=back
=item SEE ALSO
-
-
-
-
=head2 perlmod - Perl modules (packages)
=item DESCRIPTION
-
=over
=item Packages
-
=item Symbol Tables
-
=item Package Constructors and Destructors
-
=item Perl Classes
-
=item Perl Modules
-
-
-
=back
=item NOTE
-
=item THE PERL MODULE LIBRARY
-
=over
=item Pragmatic Modules
-
-diagnostics, integer, less, overload, sigtrap, strict, subs
+blib, diagnostics, integer, less, lib, locale, ops, overload, sigtrap,
+strict, subs, vars
=item Standard Modules
-
-AnyDBM_File, AutoLoader, AutoSplit, Benchmark, Carp, Config, Cwd,
-DB_File, Devel::SelfStubber, DynaLoader, English, Env, Exporter,
-ExtUtils::Liblist, ExtUtils::MakeMaker, ExtUtils::Manifest,
-ExtUtils::Mkbootstrap, ExtUtils::Miniperl, Fcntl, File::Basename,
-File::CheckTree, File::Find, FileHandle, File::Path, Getopt::Long,
-Getopt::Std, I18N::Collate, IPC::Open2, IPC::Open3, Net::Ping, POSIX,
-SelfLoader, Safe, Socket, Test::Harness, Text::Abbrev
+AnyDBM_File, AutoLoader, AutoSplit, Benchmark, CPAN, CPAN::FirstTime,
+CPAN::Nox, Carp, Class::Template, Config, Cwd, DB_File, Devel::SelfStubber,
+DirHandle, DynaLoader, English, Env, Exporter, ExtUtils::Embed,
+ExtUtils::Install, ExtUtils::Liblist, ExtUtils::MM_OS2, ExtUtils::MM_Unix,
+ExtUtils::MM_VMS, ExtUtils::MakeMaker, ExtUtils::Manifest,
+ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::testlib, Fatal,
+Fcntl, File::Basename, File::CheckTree, File::Compare, File::Copy,
+File::Find, File::Path, File::stat, FileCache, FileHandle, FindBin,
+GDBM_File, Getopt::Long, Getopt::Std, I18N::Collate, IO, IO::File,
+IO::Handle, IO::Pipe, IO::Seekable, IO::Select, IO::Socket, IPC::Open2,
+IPC::Open3, Math::BigFloat, Math::BigInt, Math::Complex, NDBM_File,
+Net::Ping, Net::hostent, Net::netent, Net::protoent, Net::servent, Opcode,
+Pod::Text, POSIX, SDBM_File, Safe, Search::Dict, SelectSaver, SelfLoader,
+Shell, Socket, Symbol, Sys::Hostname, Sys::Syslog, Term::Cap,
+Term::Complete, Term::ReadLine, Test::Harness, Text::Abbrev,
+Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Tie::Hash,
+Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local, Time::gmtime,
+Time::localtime, Time::tm, UNIVERSAL, User::grent, User::pwent
=item Extension Modules
+=back
+
+=item CPAN
+
+Language Extensions and Documentation Tools, Development Support, Operating
+System Interfaces, Networking, Device Control (modems) and InterProcess
+Communication, Data Types and Data Type Utilities, Database Interfaces,
+User Interfaces, Interfaces to / Emulations of Other Programming Languages,
+File Names, File Systems and File Locking (see also File Handles), String
+Processing, Language Text Processing, Parsing, and Searching, Option,
+Argument, Parameter, and Configuration File Processing,
+Internationalization and Locale, Authentication, Security, and Encryption,
+World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities,
+Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing,
+and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and
+exceptions etc), File Handle and Input/Output Stream Utilities,
+Miscellaneous Modules
+
+=item Modules: Creation, Use, and Abuse
+=over
+
+=item Guidelines for Module Creation
+Do similar modules already exist in some form?, Try to design the new
+module to be easy to extend and reuse, Some simple style guidelines, Select
+what to export, Select a name for the module, Have you got it right?,
+README and other Additional Files, A description of the
+module/package/extension etc, A copyright notice - see below, Prerequisites
+- what else you may need to have, How to build it - possible changes to
+Makefile.PL etc, How to install it, Recent changes in this release,
+especially incompatibilities, Changes / enhancements you plan to make in
+the future, Adding a Copyright Notice, Give the module a
+version/issue/release number, How to release and distribute a module, Take
+care when changing a released module
+
+=item Guidelines for Converting Perl 4 Library Scripts into Modules
+
+There is no requirement to convert anything, Consider the implications,
+Make the most of the opportunity, The pl2pm utility will get you started,
+Adds the standard Module prologue lines, Converts package specifiers from '
+to ::, Converts die(...) to croak(...), Several other minor changes
+
+=item Guidelines for Reusing Application Code
+
+Complete applications rarely belong in the Perl Module Library, Many
+applications contain some perl code which could be reused, Break-out the
+reusable code into one or more separate module files, Take the opportunity
+to reconsider and redesign the interfaces, In some cases the 'application'
+can then be reduced to a small
=back
-=item CPAN
+=head2 perlform - Perl formats
+
+=item DESCRIPTION
+=over
-Language Extensions and Documentation Tools, Development Support,
-Operating System Interfaces, Networking, Device Control (modems) and
-InterProcess Communication, Data Types and Data Type Utilities,
-Database Interfaces, User Interfaces, Interfaces to / Emulations of
-Other Programming Languages, File Names, File Systems and File Locking
-(see also File Handles), String Processing, Language Text Processing,
-Parsing and Searching, Option, Argument, Parameter and Configuration
-File Processing, Internationalization and Locale, Authentication,
-Security and Encryption, World Wide Web, HTML, HTTP, CGI, MIME, Server
-and Daemon Utilities, Archiving and Compression, Images, Pixmap and
-Bitmap Manipulation, Drawing and Graphing, Mail and Usenet News,
-Control Flow Utilities (callbacks and exceptions etc), File Handle and
-Input/Output Stream Utilities, Miscellaneous Modules
+=item Format Variables
-=item Modules: Creation, Use and Abuse
+=back
+=item NOTES
=over
-=item Guidelines for Module Creation
+=item Footers
+=item Accessing Formatting Internals
-Do similar modules already exist in some form?, Try to design the new
-module to be easy to extend and reuse, Some simple style guidelines,
-Select what to export, Select a name for the module, Have you got it
-right?, README and other Additional Files, A description of the
-module/package/extension etc, A copyright notice - see below,
-Prerequisites - what else you may need to have, How to build it -
-possible changes to Makefile.PL etc, How to install it, Recent changes
-in this release, especially incompatibilities, Changes / enhancements
-you plan to make in the future, Adding a Copyright Notice, Give the
-module a version/issue/release number, How to release and distribute a
-module, Take care when changing a released module
+=back
-=item Guidelines for Converting Perl 4 Library Scripts into Modules
+=item WARNINGS
+=head2 perllocale - Perl locale handling (internationalization and
+localization)
-There is no requirement to convert anything, Consider the implications,
-Make the most of the opportunity, The pl2pm utility will get you
-started, Adds the standard Module prologue lines, Converts package
-specifiers from ' to ::, Converts die(...) to croak(...), Several other
-minor changes
+=item DESCRIPTION
-=item Guidelines for Reusing Application Code
+=item PREPARING TO USE LOCALES
+=item USING LOCALES
-Complete applications rarely belong in the Perl Module Library, Many
-applications contain some perl code which could be reused, Break-out
-the reusable code into one or more separate module files, Take the
-opportunity to reconsider and redesign the interfaces, In some cases
-the 'application' can then be reduced to a small
+=over
+
+=item The use locale pragma
+=item The setlocale function
+=item The localeconv function
=back
+=item LOCALE CATEGORIES
+=over
+=item Category LC_COLLATE: Collation
-=head2 perlref - Perl references and nested data structures
+=item Category LC_CTYPE: Character Types
-=item DESCRIPTION
+=item Category LC_NUMERIC: Numeric Formatting
+
+=item Category LC_MONETARY: Formatting of monetary amounts
+
+=item LC_TIME
+=item Other categories
+
+=back
+
+=item SECURITY
+
+B<Comparison operators> (C<lt>, C<le>, C<ge>, C<gt> and C<cmp>):,
+B<Case-mapping interpolation> (with C<\l>, C<\L>, C<\u> or <\U>),
+B<Matching operator> (C<m//>):, B<Substitution operator> (C<s///>):,
+B<In-memory formatting function> (sprintf()):, B<Output formatting
+functions> (printf() and write()):, B<Case-mapping functions> (lc(),
+lcfirst(), uc(), ucfirst()):, B<POSIX locale-dependent functions>
+(localeconv(), strcoll(),strftime(), strxfrm()):, B<POSIX character class
+tests> (isalnum(), isalpha(), isdigit(),isgraph(), islower(), isprint(),
+ispunct(), isspace(), isupper(),
+isxdigit()):
+
+=item ENVIRONMENT
+
+PERL_BADLANG, LC_ALL, LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC,
+LC_TIME, LANG
+
+=item NOTES
=over
-=item Symbolic references
+=item Backward compatibility
+=item I18N:Collate obsolete
-=item Not-so-symbolic references
+=item Sort speed and memory use impacts
+
+=item write() and LC_NUMERIC
+=item Freely available locale definitions
+=item I18n and l10n
+=item An imperfect standard
=back
-=item WARNING
+=item BUGS
+
+=over
+
+=item Broken systems
+=back
=item SEE ALSO
+=item HISTORY
+=head2 perlref - Perl references and nested data structures
+=item DESCRIPTION
+=over
+
+=item Symbolic references
+
+=item Not-so-symbolic references
+
+=back
+
+=item WARNING
+
+=item SEE ALSO
=head2 perldsc - Perl Data Structures Cookbook
=item DESCRIPTION
-
arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes,
-more elaborate constructs, recursive and self-referential data
-structures, objects
+more elaborate constructs, recursive and self-referential data structures,
+objects
=item REFERENCES
-
=item COMMON MISTAKES
-
=item CAVEAT ON PRECEDENCE
-
=item WHY YOU SHOULD ALWAYS C<use strict>
-
=item DEBUGGING
-
=item CODE EXAMPLES
-
=item LISTS OF LISTS
-
=over
=item Declaration of a LIST OF LISTS
-
=item Generation of a LIST OF LISTS
-
=item Access and Printing of a LIST OF LISTS
-
-
-
=back
=item HASHES OF LISTS
-
=over
=item Declaration of a HASH OF LISTS
-
=item Generation of a HASH OF LISTS
-
=item Access and Printing of a HASH OF LISTS
-
-
-
=back
=item LISTS OF HASHES
-
=over
=item Declaration of a LIST OF HASHES
-
=item Generation of a LIST OF HASHES
-
=item Access and Printing of a LIST OF HASHES
-
-
-
=back
=item HASHES OF HASHES
-
=over
=item Declaration of a HASH OF HASHES
-
=item Generation of a HASH OF HASHES
-
=item Access and Printing of a HASH OF HASHES
-
-
-
=back
=item MORE ELABORATE RECORDS
-
=over
=item Declaration of MORE ELABORATE RECORDS
-
=item Declaration of a HASH OF COMPLEX RECORDS
-
=item Generation of a HASH OF COMPLEX RECORDS
+=back
+=item Database Ties
+=item SEE ALSO
-=back
+=item AUTHOR
-=item Database Ties
+=head2 perllol, perlLoL - Manipulating Lists of Lists in Perl
+
+=item DESCRIPTION
+=item Declaration and Access of Lists of Lists
-=item SEE ALSO
+=item Growing Your Own
+
+=item Access and Printing
+=item Slices
+
+=item SEE ALSO
=item AUTHOR
+=head2 perltoot - Tom's object-oriented tutorial for perl
+=item DESCRIPTION
+=item Creating a Class
+=over
-=head2 perllol, perlLoL - Manipulating Lists of Lists in Perl
+=item Object Representation
-=item DESCRIPTION
+=item Class Interface
+=item Constructors and Instance Methods
-=item Declaration and Access of Lists of Lists
+=item Planning for the Future: Better Constructors
+=item Destructors
-=item Growing Your Own
+=item Other Object Methods
+=back
-=item Access and Printing
+=item Class Data
+=over
-=item Slices
+=item Accessing Class Data
+=item Debugging Methods
-=item SEE ALSO
+=item Class Destructors
+=item Documenting the Interface
-=item AUTHOR
+=back
+=item Aggregation
+=item Inheritance
+=over
+=item Overridden Methods
-=head2 perlobj - Perl objects
+=item Multiple Inheritance
-=item DESCRIPTION
+=item UNIVERSAL: The Root of All Objects
+
+=back
+=item Alternate Object Representations
=over
-=item An Object is Simply a Reference
+=item Arrays as Objects
+=item Closures as Objects
-=item A Class is Simply a Package
+=back
+=item AUTOLOAD: Proxy Methods
-=item A Method is Simply a Subroutine
+=over
+=item Autoloaded Data Methods
-=item Method Invocation
+=item Inherited Autoloaded Data Methods
+=back
-=item Default UNIVERSAL methods
+=item Metaclassical Tools
-isa(CLASS), can(METHOD), VERSION([VERSION]), class(), is_instance()
+=over
+=item Class::Template
-=item Destructors
+=item Data Members as Variables
+=item NOTES
-=item WARNING
+=item Object Terminology
+=back
-=item Summary
+=item SEE ALSO
+=item COPYRIGHT
-=item Two-Phased Garbage Collection
+=over
+=item Acknowledgments
+=back
+=head2 perlobj - Perl objects
-=back
+=item DESCRIPTION
-=item SEE ALSO
+=over
+
+=item An Object is Simply a Reference
+
+=item A Class is Simply a Package
+=item A Method is Simply a Subroutine
+
+=item Method Invocation
+
+=item Default UNIVERSAL methods
+
+isa(CLASS), can(METHOD), VERSION( [NEED] ), class(), is_instance()
+=item Destructors
+
+=item WARNING
+
+=item Summary
+
+=item Two-Phased Garbage Collection
+=back
+=item SEE ALSO
=head2 perltie - how to hide an object class in a simple variable
=item SYNOPSIS
-
=item DESCRIPTION
-
=over
=item Tying Scalars
-
TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
=item Tying Arrays
-
TIEARRAY classname, LIST, FETCH this, index, STORE this, index, value,
DESTROY this
=item Tying Hashes
-
-USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key,
-STORE this, key, value, DELETE this, key, CLEAR this, EXISTS this, key,
-FIRSTKEY this, NEXTKEY this, lastkey, DESTROY this
+USER, HOME, CLOBBER, LIST, TIEHASH classname, LIST, FETCH this, key, STORE
+this, key, value, DELETE this, key, CLEAR this, EXISTS this, key, FIRSTKEY
+this, NEXTKEY this, lastkey, DESTROY this
=item Tying FileHandles
-
-
+TIEHANDLE classname, LIST, PRINT this, LIST, READLINE this, DESTROY this
=back
=item SEE ALSO
-
=item BUGS
-
=item AUTHOR
-
-
-
-
=head2 perlbot - Bag'o Object Tricks (the BOT)
=item DESCRIPTION
-
=item OO SCALING TIPS
-
=item INSTANCE VARIABLES
-
=item SCALAR INSTANCE VARIABLES
-
=item INSTANCE VARIABLE INHERITANCE
-
=item OBJECT RELATIONSHIPS
-
=item OVERRIDING SUPERCLASS METHODS
-
=item USING RELATIONSHIP WITH SDBM
-
=item THINKING OF CODE REUSE
-
=item CLASS CONTEXT AND THE OBJECT
-
=item INHERITING A CONSTRUCTOR
-
=item DELEGATION
+=head2 perlipc - Perl interprocess communication (signals, fifos, pipes,
+safe subprocesses, sockets, and semaphores)
+=item DESCRIPTION
+=item Signals
+=item Named Pipes
-=head2 perldebug - Perl debugging
+=item Using open() for IPC
-=item DESCRIPTION
+=over
+
+=item Safe Pipe Opens
+=item Bidirectional Communication
-=item The Perl Debugger
+=back
+=item Sockets: Client/Server Communication
=over
-=item Debugger Commands
+=item Internet TCP Clients and Servers
+=item Unix-Domain TCP Clients and Servers
-h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n,
-E<lt>CRE<gt>, c [line], l, l min+incr, l min-max, l line, l subname,
--, w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern], t, t
-expr, b [line] [condition], b subname [condition], d [line], D, a
-[line] command, A, O [opt[=val]] [opt"val"] [opt?].., recallCommand,
-ShellBang, pager, arrayDepth, hashDepth, compactDump, veryCompact,
-globPrint, DumpDBFiles, DumpPackages, quote, HighBit, undefPrint,
-tkRunning, signalLevel, warnLevel. dieLevel, E<lt> command, E<gt>
-command, ! number, ! -number, ! pattern, !! cmd, H -number, q or ^D,
-R, |dbcmd, ||dbcmd, = [alias value], command, p expr
+=item UDP: Message Passing
+=back
-=item Debugger Customization
+=item SysV IPC
+=item WARNING
-=item Readline Support
+=item NOTES
+=item BUGS
-=item Editor Support for Debugging
+=item AUTHOR
+=item SEE ALSO
-=item The Perl Profiler
+=head2 perldebug - Perl debugging
+=item DESCRIPTION
-=item Debugger Internals
+=item The Perl Debugger
-TTY, noTTY, ReadLine, NonStop, LineInfo
+=over
+=item Debugger Commands
-=item Other resources
+h [command], p expr, x expr, V [pkg [vars]], X [vars], T, s [expr], n,
+E<lt>CRE<gt>, c [line|sub], l, l min+incr, l min-max, l line, l subname, -,
+w [line], f filename, /pattern/, ?pattern?, L, S [[!]pattern], t, t expr, b
+[line] [condition], b subname [condition], b postpone subname [condition],
+b load filename, d [line], D, a [line] command, A, O [opt[=val]] [opt"val"]
+[opt?].., recallCommand, ShellBang, pager, tkRunning, signalLevel,
+warnLevel, dieLevel, AutoTrace, LineInfo, C<inhibit_exit>, C<PrintRet>,
+C<frame>, arrayDepth, hashDepth, compactDump, veryCompact, globPrint,
+DumpDBFiles, DumpPackages, quote, HighBit, undefPrint, C<TTY>, noTTY,
+C<noTTY>, C<ReadLine>, C<NonStop>, E<lt> [ command ], E<lt>E<lt> command,
+E<gt> command, E<gt>E<gt> command, { [ command ], {{ command, ! number, !
+-number, ! pattern, !! cmd, H -number, q or ^D, R, |dbcmd, ||dbcmd, =
+[alias value], command, p expr
+=item Debugger Customization
+=item Readline Support
+=item Editor Support for Debugging
-=back
+=item The Perl Profiler
-=item BUGS
+=item Debugger support in perl
+=item Debugger Internals
+=item Other resources
+=back
+=item BUGS
=head2 perldiag - various Perl diagnostics
=item DESCRIPTION
-
-
-
-
-=head2 perlform - Perl formats
+=head2 perlsec - Perl security
=item DESCRIPTION
-
=over
=item Laundering and Detecting Tainted Data
-
=item Cleaning Up Your Path
-
=item Security Bugs
-
=back
-=item NOTES
+=head2 perltrap - Perl traps for the unwary
+=item DESCRIPTION
=over
-=item Footers
-
-
-=item Accessing Formatting Internals
-
-
-
-
-=back
-
-=item WARNING
-
-
+=item Awk Traps
+=item C Traps
+=item Sed Traps
-=head2 perlipc - Perl interprocess communication (signals, fifos,
-pipes, safe subprocesses, sockets, and semaphores)
+=item Shell Traps
-=item DESCRIPTION
+=item Perl Traps
+=item Perl4 to Perl5 Traps
-=item Signals
+Discontinuance, Deprecation, and BugFix traps, Parsing Traps, Numerical
+Traps, General data type traps, Context Traps - scalar, list contexts,
+Precedence Traps, General Regular Expression Traps using s///, etc,
+Subroutine, Signal, Sorting Traps, OS Traps, DBM Traps, Unclassified Traps
+=item Discontinuance, Deprecation, and BugFix traps
-=item Named Pipes
+Discontinuance, Deprecation, BugFix, Discontinuance, Discontinuance,
+Discontinuance, BugFix, Discontinuance, Discontinuance, BugFix,
+Discontinuance, Deprecation, Discontinuance
+=item Parsing Traps
-=item Using open() for IPC
+Parsing, Parsing, Parsing
+=item Numerical Traps
-=over
+Numerical, Numerical, Numerical
-=item Safe Pipe Opens
+=item General data type traps
+(Arrays), (Arrays), (Hashes), (Globs), (Scalar String), (Constants),
+(Scalars), (Variable Suicide)
-=item Bidirectional Communication
+=item Context Traps - scalar, list contexts
+(list context), (scalar context), (scalar context), (list, builtin)
+=item Precedence Traps
+Precedence, Precedence, Precedence, Precedence, Precedence, Precedence,
+Precedence
-=back
+=item General Regular Expression Traps using s///, etc.
-=item Sockets: Client/Server Communication
+Regular Expression, Regular Expression, Regular Expression, Regular
+Expression, Regular Expression, Regular Expression, Regular Expression
+=item Subroutine, Signal, Sorting Traps
-=over
+(Signals), (Sort Subroutine), warn() won't let you specify a filehandle
-=item Internet TCP Clients and Servers
+=item OS Traps
+(SysV), (SysV)
-=item Unix-Domain TCP Clients and Servers
+=item Interpolation Traps
+Interpolation, Interpolation, Interpolation, Interpolation, Interpolation,
+Interpolation, Interpolation, Interpolation, Interpolation
-=item UDP: Message Passing
+=item DBM Traps
+DBM, DBM
+=item Unclassified Traps
+Unclassified
=back
-=item SysV IPC
-
-
-=item WARNING
-
-
-=item NOTES
+=head2 perlstyle - Perl style guide
+=item DESCRIPTION
-=item BUGS
+=head2 perlpod - plain old documentation
+=item DESCRIPTION
-=item AUTHOR
+=item Embedding Pods in Perl Modules
+=item Common Pod Pitfalls
=item SEE ALSO
+=item AUTHOR
-
-
-
-=head2 perlsec - Perl security
+=head2 perlbook - Perl book information
=item DESCRIPTION
-
-
-
-
-=head2 perltrap - Perl traps for the unwary
+=head2 perlembed - how to embed perl in your C program
=item DESCRIPTION
-
=over
-=item Awk Traps
-
-
-=item C Traps
+=item PREAMBLE
+B<Use C from Perl?>, B<Use a UNIX program from Perl?>, B<Use Perl from
+Perl?>, B<Use C from C?>, B<Use Perl from C?>
-=item Sed Traps
+=item ROADMAP
+=item Compiling your C program
-=item Shell Traps
+=item Adding a Perl interpreter to your C program
+=item Calling a Perl subroutine from your C program
-=item Perl Traps
+=item Evaluating a Perl statement from your C program
+=item Performing Perl pattern matches and substitutions from your C program
-=item Perl4 Traps
+=item Fiddling with the Perl stack from your C program
+=item Maintaining a persistent interpreter
+=item Maintaining multiple interpreter instances
+=item Using Perl modules, which themselves use C libraries, from your C
+program
=back
+=item MORAL
+=item AUTHOR
+=head2 perlapio, perlio - perl's IO abstraction interface.
-=head2 perlstyle - Perl style guide
+=item SYNOPSIS
=item DESCRIPTION
+B<PerlIO *>, B<PerlIO_stdin()>, B<PerlIO_stdout()>, B<PerlIO_stderr()>,
+B<PerlIO_open(path, mode)>, B<PerlIO_fdopen(fd,mode)>,
+B<PerlIO_printf(f,fmt,...)>, B<PerlIO_vprintf(f,fmt,a)>,
+B<PerlIO_stdoutf(fmt,...)>, B<PerlIO_read(f,buf,count)>,
+B<PerlIO_write(f,buf,count)>, B<PerlIO_close(f)>, B<PerlIO_puts(s,f)>,
+B<PerlIO_putc(c,f)>, B<PerlIO_ungetc(c,f)>, B<PerlIO_getc(f)>,
+B<PerlIO_eof(f)>, B<PerlIO_error(f)>, B<PerlIO_fileno(f)>,
+B<PerlIO_clearerr(f)>, B<PerlIO_flush(f)>, B<PerlIO_tell(f)>,
+B<PerlIO_seek(f,o,w)>, B<PerlIO_getpos(f,p)>, B<PerlIO_setpos(f,p)>,
+B<PerlIO_rewind(f)>, B<PerlIO_tmpfile()>
+=over
+
+=item Co-existence with stdio
+B<PerlIO_importFILE(f,flags)>, B<PerlIO_exportFILE(f,flags)>,
+B<PerlIO_findFILE(f)>, B<PerlIO_releaseFILE(p,f)>, B<PerlIO_setlinebuf(f)>,
+B<PerlIO_has_cntptr(f)>, B<PerlIO_get_ptr(f)>, B<PerlIO_get_cnt(f)>,
+B<PerlIO_canset_cnt(f)>, B<PerlIO_fast_gets(f)>,
+B<PerlIO_set_ptrcnt(f,p,c)>, B<PerlIO_set_cnt(f,c)>, B<PerlIO_has_base(f)>,
+B<PerlIO_get_base(f)>, B<PerlIO_get_bufsiz(f)>
+=back
=head2 perlxs - XS language reference manual
=item DESCRIPTION
-
=over
=item Introduction
-
=item On The Road
-
=item The Anatomy of an XSUB
-
=item The Argument Stack
-
=item The RETVAL Variable
-
=item The MODULE Keyword
-
=item The PACKAGE Keyword
-
=item The PREFIX Keyword
-
=item The OUTPUT: Keyword
-
=item The CODE: Keyword
-
=item The INIT: Keyword
-
=item The NO_INIT Keyword
-
=item Initializing Function Parameters
-
=item Default Parameter Values
-
=item The PREINIT: Keyword
+=item The SCOPE: Keyword
=item The INPUT: Keyword
-
=item Variable-length Parameter Lists
-
=item The PPCODE: Keyword
-
=item Returning Undef And Empty Lists
-
=item The REQUIRE: Keyword
-
=item The CLEANUP: Keyword
-
=item The BOOT: Keyword
-
=item The VERSIONCHECK: Keyword
-
=item The PROTOTYPES: Keyword
-
=item The PROTOTYPE: Keyword
-
=item The ALIAS: Keyword
-
=item The INCLUDE: Keyword
-
=item The CASE: Keyword
-
=item The & Unary Operator
-
=item Inserting Comments and C Preprocessor Directives
-
=item Using XS With C++
-
=item Interface Strategy
-
=item Perl Objects And C Structures
-
=item The Typemap
-
-
-
=back
=item EXAMPLES
-
=item XS VERSION
-
=item AUTHOR
-
-
-
-
-=head2 perlxstut, perlXStut - Tutorial for XSUB's
+=head2 perlxstut, perlXStut - Tutorial for XSUBs
=item DESCRIPTION
-
=over
=item VERSION CAVEAT
-
=item DYNAMIC VERSUS STATIC
-
=item EXAMPLE 1
-
=item EXAMPLE 2
-
=item WHAT HAS GONE ON?
+=item WRITING GOOD TEST SCRIPTS
=item EXAMPLE 3
-
=item WHAT'S NEW HERE?
-
=item INPUT AND OUTPUT PARAMETERS
-
=item THE XSUBPP COMPILER
-
=item THE TYPEMAP FILE
-
=item WARNING
+=item EXAMPLE 4
-=item SPECIFYING ARGUMENTS TO XSUBPP
+=item WHAT HAS HAPPENED HERE?
+=item SPECIFYING ARGUMENTS TO XSUBPP
=item THE ARGUMENT STACK
-
=item EXTENDING YOUR EXTENSION
-
=item DOCUMENTING YOUR EXTENSION
-
=item INSTALLING YOUR EXTENSION
-
=item SEE ALSO
-
=item Author
-
=item Last Changed
-
-
-
=back
-
-
-
=head2 perlguts - Perl's Internal Functions
=item DESCRIPTION
+=over
=item Datatypes
-
-=over
-
=item What is an "IV"?
-
=item Working with SV's
-
=item What's Really Stored in an SV?
-
=item Working with AV's
-
=item Working with HV's
-
=item References
-
=item Blessed References and Class Objects
-
-
-
-=back
-
=item Creating New Variables
+=item Reference Counts and Mortality
-=item XSUB's and the Argument Stack
-
-
-=item Mortality
-
-
-=item Stashes
-
+=item Stashes and Globs
=item Magic
-
-=over
-
=item Assigning Magic
-
=item Magic Virtual Tables
-
=item Finding Magic
-
-
-
-=back
-
=item Double-Typed SV's
+=item XSUB's and the Argument Stack
=item Calling Perl Routines from within C Programs
-
=item Memory Allocation
+=item PerlIO
-=item API LISTING
-
+=item Scratchpads
-AvFILL, av_clear, av_extend, av_fetch, av_len, av_make, av_pop,
-av_push, av_shift, av_store, av_undef, av_unshift, CLASS, Copy, croak,
-CvSTASH, DBsingle, DBsub, dMARK, dORIGMARK, dSP, dXSARGS, ENTER,
-EXTEND, FREETMPS, G_ARRAY, G_DISCARD, G_EVAL, GIMME, G_NOARGS,
-G_SCALAR, gv_stashpv, gv_stashsv, GvSV, he_free, hv_clear, hv_delete,
-hv_exists, hv_fetch, hv_iterinit, hv_iterkey, hv_iternext,
-hv_iternextsv, hv_iterval, hv_magic, HvNAME, hv_store, hv_undef,
-isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER, items, LEAVE,
-MARK, mg_clear, mg_copy, mg_find, mg_free, mg_get, mg_len, mg_magical,
-mg_set, Move, na, New, Newc, Newz, newAV, newHV, newRV, newSV, newSViv,
-newSVnv, newSVpv, newSVrv, newSVsv, newXS, newXSproto, Nullav, Nullch,
-Nullcv, Nullhv, Nullsv, ORIGMARK, perl_alloc, perl_call_argv,
-perl_call_method, perl_call_pv, perl_call_sv, perl_construct,
-perl_destruct, perl_eval_sv, perl_free, perl_get_av, perl_get_cv,
-perl_get_hv, perl_get_sv, perl_parse, perl_require_pv, perl_run, POPi,
-POPl, POPp, POPn, POPs,
+=item Putting a C value on Perl stack
-=item AUTHOR
+=item Scratchpads
+=item Scratchpads and recursions
-=item DATE
+=item API LISTING
+AvFILL, av_clear, av_extend, av_fetch, av_len, av_make, av_pop, av_push,
+av_shift, av_store, av_undef, av_unshift, CLASS, Copy, croak, CvSTASH,
+DBsingle, DBsub, DBtrace, dMARK, dORIGMARK, dowarn, dSP, dXSARGS, dXSI32,
+dXSI32, ENTER, EXTEND, FREETMPS, G_ARRAY, G_DISCARD, G_EVAL, GIMME,
+G_NOARGS, G_SCALAR, gv_fetchmeth, gv_fetchmethod, gv_stashpv, gv_stashsv,
+GvSV, he_free, hv_clear, hv_delete, hv_exists, hv_fetch, hv_iterinit,
+hv_iterkey, hv_iternext, hv_iternextsv, hv_iterval, hv_magic, HvNAME,
+hv_store, hv_undef, isALNUM, isALPHA, isDIGIT, isLOWER, isSPACE, isUPPER,
+items, ix, LEAVE, MARK, mg_clear, mg_copy, mg_find, mg_free, mg_get,
+mg_len, mg_magical, mg_set, Move, na, New, Newc, Newz, newAV, newHV,
+newRV_inc, newRV_noinc, newSV, newSViv, newSVnv, newSVpv, newSVrv, newSVsv,
+newXS, newXSproto, Nullav, Nullch, Nullcv, Nullhv, Nullsv, ORIGMARK,
+perl_alloc, perl_call_argv, perl_call_method, perl_call_pv, perl_call_sv,
+perl_construct, perl_destruct, perl_eval_sv, perl_free, perl_get_av,
+perl_get_cv, perl_get_hv, perl_get_sv, perl_parse, perl_require_pv,
+perl_run, POPi, POPl, POPp, POPn, POPs, PUSHMARK, PUSHi, PUSHn, PUSHp,
+PUSHs, PUTBACK, Renew, Renewc, RETVAL, safefree, safemalloc, saferealloc,
+savepv, savepvn, SAVETMPS, SP, SPAGAIN, ST, strEQ, strGE, strGT, strLE,
+strLT, strNE, strnEQ, strnNE, sv_2mortal, sv_bless, sv_catpv, sv_catpvn,
+sv_catsv, sv_cmp, sv_cmp, SvCUR, SvCUR_set, sv_dec, sv_dec, SvEND, sv_eq,
+SvGROW, sv_grow, sv_inc, SvIOK, SvIOK_off, SvIOK_on, SvIOK_only,
+SvIOK_only, SvIOKp, sv_isa, SvIV, sv_isobject, SvIVX, SvLEN, sv_len,
+sv_len, sv_magic, sv_mortalcopy, SvOK, sv_newmortal, sv_no, SvNIOK,
+SvNIOK_off, SvNIOKp, SvNOK, SvNOK_off, SvNOK_on, SvNOK_only, SvNOK_only,
+SvNOKp, SvNV, SvNVX, SvPOK, SvPOK_off, SvPOK_on, SvPOK_only, SvPOK_only,
+SvPOKp, SvPV, SvPVX, SvREFCNT, SvREFCNT_dec, SvREFCNT_inc, SvROK,
+SvROK_off, SvROK_on, SvRV, sv_setiv, sv_setnv, sv_setpv, sv_setpvn,
+sv_setref_iv, sv_setref_nv, sv_setref_pv, sv_setref_pvn, sv_setsv, SvSTASH,
+SVt_IV, SVt_PV, SVt_PVAV, SVt_PVCV, SVt_PVHV, SVt_PVMG, SVt_NV, SvTRUE,
+SvTYPE, svtype, SvUPGRADE, sv_upgrade, sv_undef, sv_unref, sv_usepvn,
+sv_yes, THIS, toLOWER, toUPPER, warn, XPUSHi, XPUSHn, XPUSHp, XPUSHs, XS,
+XSRETURN, XSRETURN_EMPTY, XSRETURN_IV, XSRETURN_NO, XSRETURN_NV,
+XSRETURN_PV, XSRETURN_UNDEF, XSRETURN_YES, XST_mIV, XST_mNV, XST_mNO,
+XST_mPV, XST_mUNDEF, XST_mYES, XS_VERSION, XS_VERSION_BOOTCHECK, Zero
+=back
+=item EDITOR
+=item DATE
=head2 perlcall - Perl calling conventions from C
=item DESCRIPTION
-
An Error Handler, An Event Driven Program
=item THE PERL_CALL FUNCTIONS
-
-B<perl_call_sv>, B<perl_call_pv>, B<perl_call_method>,
-B<perl_call_argv>
+B<perl_call_sv>, B<perl_call_pv>, B<perl_call_method>, B<perl_call_argv>
=item FLAG VALUES
-
=over
=item G_SCALAR
-
=item G_ARRAY
-
=item G_DISCARD
-
=item G_NOARGS
-
-=item G_EVAL
-
+=item G_EVAL
=item G_KEEPERR
-
-=item Determining the Context
-
-
-
+=item Determining the Context
=back
=item KNOWN PROBLEMS
-
=item EXAMPLES
-
=over
=item No Parameters, Nothing returned
-
=item Passing Parameters
-
=item Returning a Scalar
-
=item Returning a list of values
-
=item Returning a list in a scalar context
-
=item Returning Data from Perl via the parameter list
-
=item Using G_EVAL
-
=item Using G_KEEPERR
-
=item Using perl_call_sv
-
=item Using perl_call_argv
-
=item Using perl_call_method
-
=item Using GIMME
-
=item Using Perl to dispose of temporaries
-
=item Strategies for storing Callback Context Information
-
1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of
callbacks - hard wired limit, 3. Use a parameter to map to the Perl
callback
=item Alternate Stack Manipulation
-
-
-
=back
=item SEE ALSO
-
=item AUTHOR
-
=item DATE
+=head1 PRAGMA DOCUMENTATION
+=head2 blib - Use MakeMaker's uninstalled version of a package
+=item SYNOPSIS
+=item DESCRIPTION
-=head2 perlembed - how to embed perl in your C program
+=item BUGS
-=item DESCRIPTION
+=item AUTHOR
+=head2 diagnostics - Perl compiler pragma to force verbose warning
+diagnostics
-=over
+=item SYNOPSIS
-=item PREAMBLE
+=item DESCRIPTION
+=over
-B<Use C from Perl?>, B<Use a UNIX program from Perl?>, B<Use Perl from
-Perl?>, B<Use C from C?>, B<Use Perl from C?>
+=item The C<diagnostics> Pragma
-=item ROADMAP
+=item The I<splain> Program
+=back
-=item Compiling your C program
+=item EXAMPLES
+=item INTERNALS
-=item Adding a Perl interpreter to your C program
+=item BUGS
+=item AUTHOR
-=item Calling a Perl subroutine from your C program
+=head2 integer - Perl pragma to compute arithmetic in integer instead of
+double
+=item SYNOPSIS
-=item Evaluating a Perl statement from your C program
+=item DESCRIPTION
+=head2 less - perl pragma to request less of something from the compiler
-=item Performing Perl pattern matches and substitutions from your C
-program
+=item SYNOPSIS
+=item DESCRIPTION
+=head2 lib - manipulate @INC at compile time
+=item SYNOPSIS
-=back
+=item DESCRIPTION
-=item MORAL
+=over
+=item ADDING DIRECTORIES TO @INC
-=item AUTHOR
+=item DELETING DIRECTORIES FROM @INC
+=item RESTORING ORIGINAL @INC
+=back
+=item SEE ALSO
+=item AUTHOR
-=head2 perlpod - plain old documentation
+=head2 locale - Perl pragma to use and avoid POSIX locales for built-in
+operations
+
+=item SYNOPSIS
=item DESCRIPTION
+=head2 ops - Perl pragma to restrict unsafe operations when compiling
-=item Embedding Pods in Perl Modules
+=item SYNOPSIS
+=item DESCRIPTION
=item SEE ALSO
+=head2 overload - Package for overloading perl operations
-=item AUTHOR
-
+=item SYNOPSIS
+=item CAVEAT SCRIPTOR
+=item DESCRIPTION
+=over
-=head2 perlbook - Perl book information
+=item Declaration of overloaded functions
-=item DESCRIPTION
+=item Calling Conventions for Binary Operations
+FALSE, TRUE, C<undef>
+=item Calling Conventions for Unary Operations
+=item Overloadable Operations
+I<Arithmetic operations>, I<Comparison operations>, I<Bit operations>,
+I<Increment and decrement>, I<Transcendental functions>, I<Boolean, string
+and numeric conversion>, I<Special>
-=head1 PRAGMA DOCUMENTATION
+=back
+=item SPECIAL SYMBOLS FOR C<use overload>
+=over
+=item Last Resort
-=head2 diagnostics - Perl compiler pragma to force verbose warning
-diagnostics
+=item Fallback
-=item SYNOPSIS
+C<undef>, TRUE, defined, but FALSE
+=item Copy Constructor
-=item DESCRIPTION
+B<Example>
+=back
-=over
+=item MAGIC AUTOGENERATION
-=item The C<diagnostics> Pragma
+I<Assignment forms of arithmetic operations>, I<Conversion operations>,
+I<Increment and decrement>, C<abs($a)>, I<Unary minus>, I<Negation>,
+I<Concatenation>, I<Comparison operations>, I<Copy operator>
+=item WARNING
-=item The I<splain> Program
+=item Run-time Overloading
+=item Public functions
+overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op)
+=item IMPLEMENTATION
-=back
+=item AUTHOR
-=item EXAMPLES
+=item DIAGNOSTICS
+=item BUGS
-=item INTERNALS
+=head2 sigtrap - Perl pragma to enable simple signal handling
+=item SYNOPSIS
-=item BUGS
+=item DESCRIPTION
+=item OPTIONS
-=item AUTHOR
+=over
+=item SIGNAL HANDLERS
+B<stack-trace>, B<die>, B<handler> I<your-handler>
+=item SIGNAL LISTS
+B<normal-signals>, B<error-signals>, B<old-interface-signals>
-=head2 integer - Perl pragma to compute arithmetic in integer instead
-of double
+=item OTHER
-=item SYNOPSIS
+B<untrapped>, B<any>, I<signal>, I<number>
+=back
-=item DESCRIPTION
+=item EXAMPLES
+=head2 strict - Perl pragma to restrict unsafe constructs
+=item SYNOPSIS
+=item DESCRIPTION
+C<strict refs>, C<strict vars>, C<strict subs>
-=head2 less - perl pragma to request less of something from the
-compiler
+=head2 subs - Perl pragma to predeclare sub names
=item SYNOPSIS
-
=item DESCRIPTION
+=head2 vars - Perl pragma to predeclare global variable names
+=item SYNOPSIS
+=item DESCRIPTION
+=head1 MODULE DOCUMENTATION
-=head2 lib - manipulate @INC at compile time
+=head2 AnyDBM_File - provide framework for multiple DBMs
=item SYNOPSIS
-
=item DESCRIPTION
-
=over
-=item ADDING DIRECTORIES TO @INC
+=item DBM Comparisons
+[0], [1], [2], [3]
-=item DELETING DIRECTORIES FROM @INC
+=back
+=item SEE ALSO
-=item RESTORING ORIGINAL @INC
+=head2 AutoLoader - load functions only on demand
+=item SYNOPSIS
+=item DESCRIPTION
+=over
-=back
+=item __END__
-=item SEE ALSO
+=item Loading Stubs
+=item Package Lexicals
-=item AUTHOR
+=item AutoLoader vs. SelfLoader
+=back
+=item CAVEAT
+=head2 AutoSplit - split a package for autoloading
+=item SYNOPSIS
-=head2 overload - Package for overloading perl operations
+=item DESCRIPTION
-=item SYNOPSIS
+=item CAVEATS
+=item DIAGNOSTICS
-=item CAVEAT SCRIPTOR
+=head2 Benchmark - benchmark running times of code
+=item SYNOPSIS
=item DESCRIPTION
-
=over
-=item Declaration of overloaded functions
-
+=item Methods
-=item Calling Conventions for Binary Operations
+new, debug
+=item Standard Exports
-FALSE, TRUE, C<undef>
+timeit(COUNT, CODE), timethis, timethese, timediff, timestr
-=item Calling Conventions for Unary Operations
+=item Optional Exports
+=back
-=item Overloadable Operations
+=item NOTES
+=item INHERITANCE
-I<Arithmetic operations>, I<Comparison operations>, I<Bit operations>,
-I<Increment and decrement>, I<Transcendental functions>, I<Boolean,
-string and numeric conversion>, I<Special>
+=item CAVEATS
+=item AUTHORS
+=item MODIFICATION HISTORY
-=back
+=head2 CPAN - query, download and build perl modules from CPAN sites
-=item SPECIAL SYMBOLS FOR C<use overload>
+=item SYNOPSIS
+=item DESCRIPTION
=over
-=item Last Resort
+=item Interactive Mode
+Searching for authors, bundles, distribution files and modules, make, test,
+install, clean modules or distributions
-=item Fallback
+=item CPAN::Shell
+=item ProgrammerE<39>s interface
-C<undef>, TRUE, defined, but FALSE
+=item Cache Manager
-=item Copy Constructor
-
-
-B<Example>
+=item Bundles
+=item autobundle
+=item recompile
=back
-=item MAGIC AUTOGENERATION
+=item CONFIGURATION
+o conf E<lt>scalar optionE<gt>, o conf E<lt>scalar optionE<gt>
+E<lt>valueE<gt>, o conf E<lt>list optionE<gt>, o conf E<lt>list optionE<gt>
+[shift|pop], o conf E<lt>list optionE<gt> [unshift|push|splice]
+E<lt>listE<gt>
-I<Assignment forms of arithmetic operations>, I<Conversion operations>,
-I<Increment and decrement>, C<abs($a)>, I<Unary minus>,
-I<Concatenation>, I<Comparison operations>, I<Copy operator>
+=item SECURITY
-=item WARNING
+=item EXPORT
+=item Debugging
-=item Run-time Overloading
-
+=over
-=item Public functions
+=item Prerequisites
+=back
-overload::StrVal(arg), overload::Overloaded(arg),
-C<overload::Method(obj,op)>
+=item AUTHOR
-=item IMPLEMENTATION
+=item SEE ALSO
+=head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization
-=item AUTHOR
+=item SYNOPSIS
+=item DESCRIPTION
-=item DIAGNOSTICS
+=head2 CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any XS
+module
+=item SYNOPSIS
-=item BUGS
+=item DESCRIPTION
+=item SEE ALSO
+=head2 Carp, carp - warn of errors (from perspective of caller)
+=item SYNOPSIS
+=item DESCRIPTION
-=head2 sigtrap - Perl pragma to enable stack back-trace on unexpected
-signals
+=head2 Class::Template - struct/member template builder
=item SYNOPSIS
-
=item DESCRIPTION
+=item EXAMPLES
+Example 1, Example 2
+=item NOTES
-
-=head2 strict - Perl pragma to restrict unsafe constructs
+=head2 Config - access Perl configuration information
=item SYNOPSIS
-
=item DESCRIPTION
+myconfig(), config_sh(), config_vars(@names)
-C<strict refs>, C<strict vars>, C<strict subs>
-
+=item EXAMPLE
+=item WARNING
+=item NOTE
-=head2 subs - Perl pragma to pre-declare sub names
+=head2 Cwd, getcwd - get pathname of current working directory
=item SYNOPSIS
-
=item DESCRIPTION
+=head2 DB_File - Perl5 access to Berkeley DB
+=item SYNOPSIS
+=item DESCRIPTION
+B<DB_HASH>, B<DB_BTREE>, B<DB_RECNO>
-=head2 vars - Perl pragma to pre-declare global variable names
+=over
-=item SYNOPSIS
+=item How does DB_File interface to Berkeley DB?
+=item Opening a Berkeley DB Database File
-=item DESCRIPTION
+=item Default Parameters
+=item In Memory Databases
+
+=back
+=item DB_HASH
+=over
+=item A Simple Example.
-=head1 MODULE DOCUMENTATION
+=back
+=item DB_BTREE
+=over
+=item Changing the BTREE sort order
-=head2 AnyDBM_File - provide framework for multiple DBMs
+=item Handling duplicate keys
-=item SYNOPSIS
+=item The get_dup method.
+=item Matching Partial Keys
-=item DESCRIPTION
+=back
+=item DB_RECNO
=over
-=item DBM Comparisons
+=item The bval option
+=item A Simple Example
-[0], [1], [2], [3]
+=item Extra Methods
+B<$X-E<gt>push(list) ;>, B<$value = $X-E<gt>pop ;>, B<$X-E<gt>shift>,
+B<$X-E<gt>unshift(list) ;>, B<$X-E<gt>length>
+=item Another Example
=back
-=item SEE ALSO
-
+=item THE API INTERFACE
+B<$status = $X-E<gt>get($key, $value [, $flags]) ;>, B<$status =
+$X-E<gt>put($key, $value [, $flags]) ;>, B<$status = $X-E<gt>del($key [,
+$flags]) ;>, B<$status = $X-E<gt>fd ;>, B<$status = $X-E<gt>seq($key,
+$value, $flags) ;>, B<$status = $X-E<gt>sync([$flags]) ;>
+=item HINTS AND TIPS
+=over
-=head2 AutoLoader - load functions only on demand
-
-=item SYNOPSIS
+=item Locking Databases
+=item Sharing databases with C applications
-=item DESCRIPTION
+=back
+=item COMMON QUESTIONS
+=over
+=item Why is there Perl source in my database?
+=item How do I store complex data structures with DB_File?
-=head2 AutoSplit - split a package for autoloading
+=item What does "Invalid Argument" mean?
-=item SYNOPSIS
+=item What does "Bareword 'DB_File' not allowed" mean?
+=back
-=item DESCRIPTION
+=item HISTORY
+=item BUGS
+=item AVAILABILITY
+=item SEE ALSO
+=item AUTHOR
-=head2 Benchmark - benchmark running times of code
+=head2 Devel::SelfStubber - generate stubs for a SelfLoading module
=item SYNOPSIS
-
=item DESCRIPTION
+=head2 DirHandle - supply object methods for directory handles
-=over
-
-=item Methods
+=item SYNOPSIS
+=item DESCRIPTION
-new, debug
+=head2 DynaLoader - Dynamically load C libraries into Perl code
-=item Standard Exports
+=item SYNOPSIS
+=item DESCRIPTION
-C<timeit(COUNT, CODE)>, timethis, timethese, timediff, timestr
+@dl_library_path, @dl_resolve_using, @dl_require_symbols, dl_error(),
+$dl_debug, dl_findfile(), dl_expandspec(), dl_load_file(),
+dl_find_symbol(), dl_undef_symbols(), dl_install_xsub(), bootstrap()
-=item Optional Exports
+=item AUTHOR
+=head2 English - use nice English (or awk) names for ugly punctuation
+variables
+=item SYNOPSIS
+=item DESCRIPTION
-=back
+=head2 Env - perl module that imports environment variables
-=item NOTES
+=item SYNOPSIS
+=item DESCRIPTION
-=item INHERITANCE
+=item AUTHOR
+=head2 Exporter - Implements default import method for modules
-=item CAVEATS
+=item SYNOPSIS
+=item DESCRIPTION
-=item AUTHORS
+=over
+=item Selecting What To Export
-=item MODIFICATION HISTORY
+=item Specialised Import Lists
+=item Module Version Checking
+=item Managing Unknown Symbols
+=item Tag Handling Utility Functions
+=back
-=head2 Carp, carp - warn of errors (from perspective of caller)
+=head2 ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications
=item SYNOPSIS
-
=item DESCRIPTION
+=item @EXPORT
+=item FUNCTIONS
+xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(),
+ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules)
+=item EXAMPLES
-=head2 Cwd, getcwd - get pathname of current working directory
-
-=item SYNOPSIS
-
-
-=item DESCRIPTION
+=item SEE ALSO
+=item AUTHOR
+=head2 ExtUtils::Install - install files from here to there
+=item SYNOPSIS
+=item DESCRIPTION
-=head2 DB_File - Perl5 access to Berkeley DB
+=head2 ExtUtils::Liblist - determine libraries to use and how to use them
=item SYNOPSIS
-
=item DESCRIPTION
-
-DB_HASH, DB_BTREE, DB_RECNO
+For static extensions, For dynamic extensions, For dynamic extensions
=over
-=item How does DB_File interface to Berkeley DB?
+=item EXTRALIBS
+=item LDLOADLIBS and LD_RUN_PATH
-=item Differences with Berkeley DB
+=item BSLOADLIBS
+=back
-=item RECNO
+=item PORTABILITY
+=over
-=item In Memory Databases
+=item VMS implementation
+=back
-=item Using the Berkeley DB Interface Directly
+=item SEE ALSO
+=head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in
+ExtUtils::MakeMaker
-get, put, del, fd, seq, sync
+=item SYNOPSIS
+=item DESCRIPTION
+=head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
-=back
+=item SYNOPSIS
-=item EXAMPLES
+=item DESCRIPTION
+=item METHODS
=over
-=item Using HASH
-
-
-=item Using BTREE
+=item Preloaded methods
+canonpath, catdir, catfile, curdir, rootdir, updir
-=item Using RECNO
+=item SelfLoaded methods
+c_o (o), cflags (o), clean (o), const_cccmd (o), const_config (o),
+const_loadlibs (o), constants (o), depend (o), dir_target (o), dist (o),
+dist_basics (o), dist_ci (o), dist_core (o), dist_dir (o), dist_test (o),
+dlsyms (o), dynamic (o), dynamic_bs (o), dynamic_lib (o), exescan,
+extliblist, file_name_is_absolute, find_perl
+
+=item Methods to actually produce chunks of text for the Makefile
+
+force (o), guess_name, has_link_code, init_dirscan, init_main, init_others,
+install (o), installbin (o), libscan (o), linkext (o), lsdir, macro (o),
+makeaperl (o), makefile (o), manifypods (o), maybe_command,
+maybe_command_in_dirs, needs_linking (o), nicetext, parse_version, pasthru
+(o), path, perl_script, perldepend (o), pm_to_blib, post_constants (o),
+post_initialize (o), postamble (o), prefixify, processPL (o), realclean
+(o), replace_manpage_separator, static (o), static_lib (o), staticmake (o),
+subdir_x (o), subdirs (o), test (o), test_via_harness (o), test_via_script
+(o), tool_autosplit (o), tools_other (o), tool_xsubpp (o), top_targets (o),
+writedoc, xs_c (o), xs_o (o)
-=item Locking Databases
+=back
+=item SEE ALSO
+=head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in
+ExtUtils::MakeMaker
+=item SYNOPSIS
-=back
+=item DESCRIPTION
-=item HISTORY
+=over
+=item Methods always loaded
-=item WARNINGS
+eliminate_macros, fixpath, catdir, catfile, wraplist, curdir (override),
+rootdir (override), updir (override)
+=item SelfLoaded methods
-=item BUGS
+guess_name (override), find_perl (override), path (override), maybe_command
+(override), maybe_command_in_dirs (override), perl_script (override),
+file_name_is_absolute (override), replace_manpage_separator, init_others
+(override), constants (override), cflags (override), const_cccmd
+(override), pm_to_blib (override), tool_autosplit (override), tool_sxubpp
+(override), xsubpp_version (override), tools_other (override), dist
+(override), c_o (override), xs_c (override), xs_o (override), top_targets
+(override), dlsyms (override), dynamic_lib (override), dynamic_bs
+(override), static_lib (override), manifypods (override), processPL
+(override), installbin (override), subdir_x (override), clean (override),
+realclean (override), dist_basics (override), dist_core (override),
+dist_dir (override), dist_test (override), install (override), perldepend
+(override), makefile (override), test (override), test_via_harness
+(override), test_via_script (override), makeaperl (override), nicetext
+(override)
+=back
-=item AVAILABILITY
+=head2 ExtUtils::MakeMaker - create an extension Makefile
+=item SYNOPSIS
-=item SEE ALSO
+=item DESCRIPTION
+=over
-=item AUTHOR
+=item How To Write A Makefile.PL
+=item Default Makefile Behaviour
+=item make test
+=item make testdb
+=item make install
-=head2 Devel::SelfStubber - generate stubs for a SelfLoading module
+=item PREFIX and LIB attribute
-=item SYNOPSIS
+=item AFS users
+=item Static Linking of a new Perl Binary
-=item DESCRIPTION
+=item Determination of Perl Library and Installation Locations
+=item Which architecture dependent directory?
+=item Using Attributes and Parameters
+C, CONFIG, CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS,
+EXCLUDE_EXT, EXE_FILES, NO_VC, FIRST_MAKEFILE, FULLPERL, H, INC,
+INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, INSTALLDIRS, INSTALLMAN1DIR,
+INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, INSTALLSITELIB,
+INSTALLSITEARCH, INST_ARCHLIB, INST_BIN, INST_EXE, INST_LIB, INST_MAN1DIR,
+INST_MAN3DIR, INST_SCRIPT, LDFROM, LIBPERL_A, LIB, LIBS, LINKTYPE,
+MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET, MYEXTLIB, NAME,
+NEEDS_LINKING, NOECHO, NORECURS, OBJECT, OPTIMIZE, PERL, PERLMAINCC,
+PERL_ARCHLIB, PERL_LIB, PERL_SRC, PL_FILES, PM, PMLIBDIRS, PREFIX,
+PREREQ_PM, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT, XSPROTOARG,
+XS_VERSION
+=item Additional lowercase attributes
-=head2 DirHandle - supply object methods for directory handles
+clean, depend, dist, dynamic_lib, installpm, linkext, macro, realclean,
+tool_autosplit
-=item SYNOPSIS
+=item Overriding MakeMaker Methods
+=item Hintsfile support
-=item DESCRIPTION
+=item Distribution Support
+ make distcheck, make skipcheck, make distclean, make manifest,
+ make distdir, make tardist, make dist, make uutardist, make
+shdist, make zipdist, make ci
+=back
+=item SEE ALSO
+=item AUTHORS
-=head2 DynaLoader - Dynamically load C libraries into Perl code
+=head2 ExtUtils::Manifest - utilities to write and check a MANIFEST file
=item SYNOPSIS
-
=item DESCRIPTION
+=item MANIFEST.SKIP
-@dl_library_path, @dl_resolve_using, @dl_require_symbols, dl_error(),
-$dl_debug, dl_findfile(), dl_expandspec(), dl_load_file(),
-dl_find_symbol(), dl_undef_symbols(), dl_install_xsub(), bootstrap()
+=item EXPORT_OK
-=item AUTHOR
+=item GLOBAL VARIABLES
+=item DIAGNOSTICS
+C<Not in MANIFEST:> I<file>, C<No such file:> I<file>, C<MANIFEST:> I<$!>,
+C<Added to MANIFEST:> I<file>
+=item SEE ALSO
+=item AUTHOR
-=head2 English - use nice English (or awk) names for ugly punctuation
-variables
+=head2 ExtUtils::Miniperl, writemain - write the C code for perlmain.c
=item SYNOPSIS
-
=item DESCRIPTION
+=item SEE ALSO
+=head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
+=item SYNOPSIS
+=item DESCRIPTION
-=head2 Env - perl module that imports environment variables
+=head2 ExtUtils::Mksymlists - write linker options files for dynamic
+extension
=item SYNOPSIS
-
=item DESCRIPTION
+NAME, DL_FUNCS, DL_VARS, FILE, FUNCLIST, DLBASE
=item AUTHOR
+=item REVISION
+=head2 ExtUtils::testlib - add blib/* directories to @INC
+=item SYNOPSIS
+=item DESCRIPTION
-=head2 Exporter - Implements default import method for modules
+=head2 Fatal - replace functions with equivalents which succeed or die
=item SYNOPSIS
-
=item DESCRIPTION
+=item AUTHOR
-=over
+=head2 Fcntl - load the C Fcntl.h defines
-=item Selecting What To Export
+=item SYNOPSIS
+=item DESCRIPTION
-=item Specialised Import Lists
+=item NOTE
+=item EXPORTED SYMBOLS
-=item Module Version Checking
+=head2 File::Basename, fileparse - split a pathname into pieces
+=item SYNOPSIS
-=item Managing Unknown Symbols
+=item DESCRIPTION
+fileparse_set_fstype, fileparse
-=item Tag Handling Utility Functions
+=item EXAMPLES
+C<basename>, C<dirname>
+=head2 File::CheckTree, validate - run many filetest checks on a tree
+=item SYNOPSIS
-=back
+=item DESCRIPTION
+=head2 File::Compare - Compare files or filehandles
+=item SYNOPSIS
+=item DESCRIPTION
-=head2 ExtUtils::Install - install files from here to there
+=item RETURN
-=item SYNOPSIS
+=item AUTHOR
+
+=head2 File::Copy - Copy files or filehandles
+=item SYNOPSIS
=item DESCRIPTION
+=over
+=item Special behavior if C<syscopy> is defined (VMS and OS/2)
+rmscopy($from,$to[,$date_flag])
+=back
-=head2 ExtUtils::Liblist - determine libraries to use and how to use
-them
+=item RETURN
-=item SYNOPSIS
+=item AUTHOR
+=head2 File::Find, find - traverse a file tree
+
+=item SYNOPSIS
=item DESCRIPTION
+=head2 File::Path - create or remove a series of directories
-For static extensions, For dynamic extensions, For dynamic extensions
+=item SYNOPSIS
-=over
+=item DESCRIPTION
-=item EXTRALIBS
+=item AUTHORS
+=item REVISION
-=item LDLOADLIBS and LD_RUN_PATH
+=head2 File::stat - by-name interface to Perl's built-in stat() functions
+=item SYNOPSIS
-=item BSLOADLIBS
+=item DESCRIPTION
+=item NOTE
+=item AUTHOR
+=head2 FileCache - keep more files open than the system permits
-=back
+=item SYNOPSIS
-=item PORTABILITY
+=item DESCRIPTION
+=item BUGS
-=item SEE ALSO
+=head2 FileHandle - supply object methods for filehandles
+=item SYNOPSIS
+=item DESCRIPTION
+$fh->print, $fh->printf, $fh->getline, $fh->getlines
+=item SEE ALSO
-=head2 ExtUtils::MM_OS2 - methods to override UN*X behaviour in
-ExtUtils::MakeMaker
+=head2 FindBin - Locate directory of original perl script
+
+=item SYNOPSIS
=item DESCRIPTION
+=item EXPORTABLE VARIABLES
+=item KNOWN BUGS
+=item AUTHORS
+=item COPYRIGHT
-=head2 ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
+=item REVISION
-=item SYNOPSIS
+=head2 GDBM_File - Perl5 access to the gdbm library.
+=item SYNOPSIS
=item DESCRIPTION
+=item AVAILABILITY
-=item METHODS
-
-
-=over
+=item BUGS
-=item Preloaded methods
+=item SEE ALSO
+=head2 Getopt::Long, GetOptions - extended processing of command line
+options
-catdir, catfile, nicetext, libscan, exescan, lsdir, path,
-replace_manpage_separator, file_name_is_absolute, prefixify,
-maybe_command_in_dirs, maybe_command, perl_script
+=item SYNOPSIS
-=item SelfLoaded methods
+=item DESCRIPTION
+E<lt>noneE<gt>, !, =s, :s, =i, :i, =f, :f
-guess_name, init_main, init_dirscan, init_others, find_perl
+=over
-=item Methods to produce chunks of text for the Makefile
+=item Linkage specification
+=item Aliases and abbreviations
-post_initialize, const_config, constants, const_loadlibs, const_cccmd,
-tool_autosplit, tool_xsubpp, tools_other, dist, macro, depend,
-post_constants, pasthru, c_o, xs_c, xs_o, top_targets, linkext, dlsyms,
-dynamic, dynamic_bs, dynamic_lib, static, static_lib, installpm,
-installpm_x, manifypods, processPL, installbin, subdirs, subdir_x,
-clean, realclean, dist_basics, dist_core, dist_dir, dist_test, dist_ci,
-install, force, perldepend, makefile, staticmake, test,
-test_via_harness, test_via_script, postamble, makeaperl, extliblist,
-dir_target, needs_linking, has_link_code, writedoc
+=item Non-option call-back routine
+=item Option starters
+=item Return value
=back
-=item SEE ALSO
+=item COMPATIBILITY
+=item EXAMPLES
+=item CONFIGURATION VARIABLES
+$Getopt::Long::autoabbrev, $Getopt::Long::getopt_compat,
+$Getopt::Long::order, $Getopt::Long::bundling, $Getopt::Long::ignorecase,
+$Getopt::Long::passthrough, $Getopt::Long::VERSION, $Getopt::Long::error,
+$Getopt::Long::debug
+=head2 Getopt::Std, getopt - Process single-character switches with switch
+clustering
-=head2 ExtUtils::MM_VMS - methods to override UN*X behaviour in
-ExtUtils::MakeMaker
+=item SYNOPSIS
=item DESCRIPTION
+=head2 I18N::Collate - compare 8-bit scalar data according to the current
+locale
+=item SYNOPSIS
+=item DESCRIPTION
-
-=head2 ExtUtils::MakeMaker - create an extension Makefile
+=head2 IO - load various IO modules
=item SYNOPSIS
-
=item DESCRIPTION
+=head2 IO::File - supply object methods for filehandles
-=over
-
-=item Hintsfile support
-
+=item SYNOPSIS
-=item What's new in version 5 of MakeMaker
+=item DESCRIPTION
+=item CONSTRUCTOR
-=item Incompatibilities between MakeMaker 5.00 and 4.23
+new ([ ARGS ] )
+=item METHODS
-=item Default Makefile Behaviour
+open( FILENAME [,MODE [,PERMS]] )
+=item SEE ALSO
-=item make test
+=item HISTORY
+=head2 IO::Handle - supply object methods for I/O handles
-=item make install
+=item SYNOPSIS
+=item DESCRIPTION
-=item PREFIX attribute
+=item CONSTRUCTOR
+new (), new_from_fd ( FD, MODE )
-=item AFS users
+=item METHODS
+$fh->getline, $fh->getlines, $fh->fdopen ( FD, MODE ), $fh->write ( BUF,
+LEN [, OFFSET }\] ), $fh->opened, $fh->untaint
-=item Static Linking of a new Perl Binary
+=item NOTE
+=item SEE ALSO
-=item Determination of Perl Library and Installation Locations
+=item BUGS
+=item HISTORY
-=item Useful Default Makefile Macros
+=head2 IO::Pipe, IO::pipe - supply object methods for pipes
+=item SYNOPSIS
-=item Using Attributes and Parameters
+=item DESCRIPTION
+=item CONSTRCUTOR
-C, CONFIG, CONFIGURE, DEFINE, DIR, DISTNAME, DL_FUNCS, DL_VARS,
-EXE_FILES, FIRST_MAKEFILE, FULLPERL, H, INC, INSTALLARCHLIB,
-INSTALLBIN, INSTALLDIRS, INSTALLMAN1DIR, INSTALLMAN3DIR,
-INSTALLPRIVLIB, INSTALLSITELIB, INSTALLSITEARCH, INST_ARCHLIB,
-INST_EXE, INST_LIB, INST_MAN1DIR, INST_MAN3DIR, LDFROM, LIBPERL_A,
-LIBS, LINKTYPE, MAKEAPERL, MAKEFILE, MAN1PODS, MAN3PODS, MAP_TARGET,
-MYEXTLIB, NAME, NEEDS_LINKING, NOECHO, NORECURS, OBJECT, PERL,
-PERLMAINCC, PERL_ARCHLIB, PERL_LIB, PERL_SRC, PL_FILES, PM, PMLIBDIRS,
-PREFIX, PREREQ, SKIP, TYPEMAPS, VERSION, VERSION_FROM, XS, XSOPT,
-XSPROTOARG, XS_VERSION
+new ( [READER, WRITER] )
-=item Additional lowercase attributes
+=item METHODS
+reader ([ARGS]), writer ([ARGS]), handles ()
-clean, depend, dist, dynamic_lib, installpm, linkext, macro, realclean,
-tool_autosplit
+=item SEE ALSO
-=item Overriding MakeMaker Methods
+=item AUTHOR
+=item COPYRIGHT
-=item Distribution Support
+=head2 IO::Seekable - supply seek based methods for I/O objects
+=item SYNOPSIS
- make distcheck, make skipcheck, make distclean, make
- manifest, make distdir, make tardist, make dist, make
- uutardist, make shdist, make ci
+=item DESCRIPTION
+=item SEE ALSO
+=item HISTORY
-=back
+=head2 IO::Select - OO interface to the select system call
-=item AUTHORS
+=item SYNOPSIS
+=item DESCRIPTION
-=item MODIFICATION HISTORY
+=item CONSTRUCTOR
+new ( [ HANDLES ] )
-=item TODO
+=item METHODS
+add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
+[ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_error ( [ TIMEOUT ] ), count
+(), bits(), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
+=item EXAMPLE
+=item AUTHOR
+=item COPYRIGHT
-=head2 ExtUtils::Manifest - utilities to write and check a MANIFEST
-file
+=head2 IO::Socket - Object interface to socket communications
=item SYNOPSIS
-
=item DESCRIPTION
+=item CONSTRUCTOR
-=item MANIFEST.SKIP
-
+new ( [ARGS] )
-=item EXPORT_OK
+=item METHODS
+accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype,
+protocol
-=item GLOBAL VARIABLES
+=item SUB-CLASSES
+=over
-=item DIAGNOSTICS
+=item IO::Socket::INET
+=item METHODS
-C<Not in MANIFEST:> I<file>, C<No such file:> I<file>, C<MANIFEST:>
-I<$!>, C<Added to MANIFEST:> I<file>
+sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
+()
-=item SEE ALSO
+=item IO::Socket::UNIX
+=item METHODS
-=item AUTHOR
+hostpath(), peerpath()
+=back
+=item SEE ALSO
+=item AUTHOR
+=item COPYRIGHT
-=head2 ExtUtils::Mkbootstrap - make a bootstrap file for use by
-DynaLoader
+=head2 IO::lib::IO::File, IO::File - supply object methods for filehandles
=item SYNOPSIS
-
=item DESCRIPTION
+=item CONSTRUCTOR
+new ([ ARGS ] )
+=item METHODS
+open( FILENAME [,MODE [,PERMS]] )
-=head2 ExtUtils::Mksymlists - write linker options files for dynamic
-extension
+=item SEE ALSO
-=item SYNOPSIS
+=item HISTORY
+=head2 IO::lib::IO::Handle, IO::Handle - supply object methods for I/O
+handles
-=item DESCRIPTION
+=item SYNOPSIS
+=item DESCRIPTION
-NAME, DL_FUNCS, DL_VARS, FILE, FUNCLIST, DLBASE
+=item CONSTRUCTOR
-=item AUTHOR
+new (), new_from_fd ( FD, MODE )
+=item METHODS
-=item REVISION
+$fh->getline, $fh->getlines, $fh->fdopen ( FD, MODE ), $fh->write ( BUF,
+LEN [, OFFSET }\] ), $fh->opened, $fh->untaint
+=item NOTE
+=item SEE ALSO
+=item BUGS
+=item HISTORY
-=head2 Fcntl - load the C Fcntl.h defines
+=head2 IO::lib::IO::Pipe, IO::pipe - supply object methods for pipes
=item SYNOPSIS
-
=item DESCRIPTION
+=item CONSTRCUTOR
-=item NOTE
+new ( [READER, WRITER] )
+=item METHODS
+reader ([ARGS]), writer ([ARGS]), handles ()
+=item SEE ALSO
+=item AUTHOR
-=head2 File::Basename, Basename - parse file specifications
+=item COPYRIGHT
-=item SYNOPSIS
+=head2 IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for
+I/O objects
+=item SYNOPSIS
=item DESCRIPTION
+=item SEE ALSO
-fileparse_set_fstype, fileparse
-
-=item EXAMPLES
-
-
-C<basename>, C<dirname>
-
+=item HISTORY
+=head2 IO::lib::IO::Select, IO::Select - OO interface to the select system
+call
+=item SYNOPSIS
-=head2 File::CheckTree, validate - run many filetest checks on a tree
+=item DESCRIPTION
-=item SYNOPSIS
+=item CONSTRUCTOR
+new ( [ HANDLES ] )
-=item DESCRIPTION
+=item METHODS
+add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read (
+[ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_error ( [ TIMEOUT ] ), count
+(), bits(), bits(), select ( READ, WRITE, ERROR [, TIMEOUT ] )
+=item EXAMPLE
+=item AUTHOR
+=item COPYRIGHT
-=head2 File::Find, find - traverse a file tree
+=head2 IO::lib::IO::Socket, IO::Socket - Object interface to socket
+communications
=item SYNOPSIS
-
=item DESCRIPTION
+=item CONSTRUCTOR
+new ( [ARGS] )
+=item METHODS
+accept([PKG]), timeout([VAL]), sockopt(OPT [, VAL]), sockdomain, socktype,
+protocol
-=head2 File::Path - create or remove a series of directories
+=item SUB-CLASSES
-=item SYNOPSIS
+=over
+=item IO::Socket::INET
-=item DESCRIPTION
+=item METHODS
+sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost
+()
-=item AUTHORS
+=item IO::Socket::UNIX
+=item METHODS
-=item REVISION
+hostpath(), peerpath()
+=back
+=item SEE ALSO
+=item AUTHOR
+=item COPYRIGHT
-=head2 FileCache - keep more files open than the system permits
+=head2 IPC::Open2, open2 - open a process for both reading and writing
=item SYNOPSIS
-
=item DESCRIPTION
+=item WARNING
-=item BUGS
+=item SEE ALSO
+=head2 IPC::Open3, open3 - open a process for reading, writing, and error
+handling
+=item SYNOPSIS
+=item DESCRIPTION
+=item WARNING
-=head2 FileHandle - supply object methods for filehandles
+=head2 Math::BigFloat - Arbitrary length float math package
=item SYNOPSIS
-
=item DESCRIPTION
+number format, Error returns 'NaN', Division is computed to
- $fh->print, $fh->printf, $fh->getline, $fh->getlines
+=item BUGS
-=item SEE ALSO
+=item AUTHOR
+=head2 Math::BigInt - Arbitrary size integer math package
-=item BUGS
+=item SYNOPSIS
+=item DESCRIPTION
+Canonical notation, Input, Output
+=item EXAMPLES
+=item BUGS
-=head2 GDBM_File - Perl5 access to the gdbm library.
+=item AUTHOR
-=item SYNOPSIS
+=head2 Math::Complex - complex numbers and associated mathematical
+functions
+=item SYNOPSIS
=item DESCRIPTION
+=item OPERATIONS
-=item AVAILABILITY
-
+=item CREATION
-=item BUGS
+=item STRINGIFICATION
+=item USAGE
-=item SEE ALSO
+=item BUGS
+=item AUTHOR
+=head2 NDBM_File - Tied access to ndbm files
+=item SYNOPSIS
+=item DESCRIPTION
-=head2 Getopt::Long, GetOptions - extended processing of command line
-options
+=head2 Net::Ping - check a remote host for reachability
=item SYNOPSIS
-
=item DESCRIPTION
-
-<none>, !, =s, :s, =i, :i, =f, :f
-
=over
-=item Linkage specification
-
+=item Functions
-=item Aliases and abbreviations
+Net::Ping->new([$proto [, $def_timeout [, $bytes]]]);, $p->ping($host [,
+$timeout]);, $p->close();, pingecho($host [, $timeout]);
+=back
-=item Non-option call-back routine
+=item WARNING
+=item NOTES
-=item Option starters
+=head2 Net::hostent - by-name interface to Perl's built-in gethost*()
+functions
+=item SYNOPSIS
-=item Return value
+=item DESCRIPTION
+=item EXAMPLES
+=item NOTE
+=item AUTHOR
-=back
+=head2 Net::netent - by-name interface to Perl's built-in getnet*()
+functions
-=item COMPATIBILITY
+=item SYNOPSIS
+=item DESCRIPTION
=item EXAMPLES
+=item NOTE
-=item CONFIGURATION VARIABLES
+=item AUTHOR
+=head2 Net::protoent - by-name interface to Perl's built-in getproto*()
+functions
-$Getopt::Long::autoabbrev, $Getopt::Long::getopt_compat,
-$Getopt::Long::order, $Getopt::Long::ignorecase,
-$Getopt::Long::VERSION, $Getopt::Long::error, $Getopt::Long::debug
+=item SYNOPSIS
+=item DESCRIPTION
+=item NOTE
+=item AUTHOR
-=head2 Getopt::Std, getopt - Process single-character switches with
-switch clustering
+=head2 Net::servent - by-name interface to Perl's built-in getserv*()
+functions
=item SYNOPSIS
-
=item DESCRIPTION
+=item EXAMPLES
+=item NOTE
+=item AUTHOR
-
-=head2 I18N::Collate - compare 8-bit scalar data according to the
-current locale
+=head2 ODBM_File - Tied access to odbm files
=item SYNOPSIS
-
=item DESCRIPTION
-
-
-
-
-=head2 IPC::Open2, open2 - open a process for both reading and writing
+=head2 Opcode - Disable named opcodes when compiling perl code
=item SYNOPSIS
-
=item DESCRIPTION
+=item NOTE
=item WARNING
+=item Operator Names and Operator Lists
-=item SEE ALSO
-
+an operator name (opname), an operator tag name (optag), a negated opname
+or optag, an operator set (opset)
+=item Opcode Functions
+opcodes, opset (OP, ...), opset_to_ops (OPSET), opset_to_hex (OPSET),
+full_opset, empty_opset, invert_opset (OPSET), verify_opset (OPSET, ...),
+define_optag (OPTAG, OPSET), opmask_add (OPSET), opmask, opdesc (OP, ...),
+opdump (PAT)
+=item Manipulating Opsets
-=head2 IPC::Open3, open3 - open a process for reading, writing, and
-error handling
-
-=item SYNOPSIS
-
-
-=item DESCRIPTION
+=item TO DO (maybe)
+=item Predefined Opcode Tags
+:base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math,
+:default, :filesys_read, :sys_db, :browse, :filesys_open, :filesys_write,
+:subprocess, :ownprocess, :others, :still_to_be_decided, :dangerous
+=item SEE ALSO
+=item AUTHORS
-=head2 Net::Ping, pingecho - check a host for upness
+=head2 Opcode::Safe, Safe - Compile and execute code in restricted
+compartments
=item SYNOPSIS
-
=item DESCRIPTION
+a new namespace, an operator mask
+
+=item WARNING
=over
-=item Parameters
+=item RECENT CHANGES
+=item Methods in class Safe
-hostname, timeout
+permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
+...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
+(PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
+root (NAMESPACE), mask (MASK)
+=item Some Safety Issues
+Memory, CPU, Snooping, Signals, State Changes
-=back
+=item AUTHOR
-=item WARNING
+=back
+=head2 Opcode::ops, ops - Perl pragma to restrict unsafe operations when
+compiling
+=item SYNOPSIS
+=item DESCRIPTION
+=item SEE ALSO
=head2 POSIX - Perl interface to IEEE Std 1003.1
=item SYNOPSIS
-
=item DESCRIPTION
-
=item NOTE
-
-=item CAVEATS
-
+=item CAVEATS
=item FUNCTIONS
-
-_exit, abort, abs, access, acos, alarm, asctime, asin, assert, atan,
-atan2, atexit, atof, atoi, atol, bsearch, calloc, ceil, chdir, chmod,
-chown, clearerr, clock, close, closedir, cos, cosh, creat, ctermid,
-ctime, cuserid, difftime, div, dup, dup2, errno, execl, execle, execlp,
-execv, execve, execvp, exit, exp, fabs, fclose, fcntl, fdopen, feof,
-ferror, fflush, fgetc, fgetpos, fgets, fileno, floor, fmod, fopen,
-fork, fpathconf, fprintf, fputc, fputs, fread, free, freopen, frexp,
-fscanf, fseek, fsetpos, fstat, ftell, fwrite, getc, getchar, getcwd,
-getegid, getenv, geteuid, getgid, getgrgid, getgrnam, getgroups,
-getlogin, getpgrp, getpid, getppid, getpwnam, getpwuid, gets, getuid,
-gmtime, isalnum, isalpha, isatty, iscntrl, isdigit, isgraph, islower,
-isprint, ispunct, isspace, isupper, isxdigit, kill, labs, ldexp, ldiv,
-link, localeconv, localtime, log, log10, longjmp, lseek, malloc, mblen,
-mbstowcs, mbtowc, memchr, memcmp, memcpy, memmove, memset, mkdir,
-mkfifo, mktime, modf, nice, offsetof, open, opendir, pat
+_exit, abort, abs, access, acos, alarm, asctime, asin, assert, atan, atan2,
+atexit, atof, atoi, atol, bsearch, calloc, ceil, chdir, chmod, chown,
+clearerr, clock, close, closedir, cos, cosh, creat, ctermid, ctime,
+cuserid, difftime, div, dup, dup2, errno, execl, execle, execlp, execv,
+execve, execvp, exit, exp, fabs, fclose, fcntl, fdopen, feof, ferror,
+fflush, fgetc, fgetpos, fgets, fileno, floor, fmod, fopen, fork, fpathconf,
+fprintf, fputc, fputs, fread, free, freopen, frexp, fscanf, fseek, fsetpos,
+fstat, ftell, fwrite, getc, getchar, getcwd, getegid, getenv, geteuid,
+getgid, getgrgid, getgrnam, getgroups, getlogin, getpgrp, getpid, getppid,
+getpwnam, getpwuid, gets, getuid, gmtime, isalnum, isalpha, isatty,
+iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper,
+isxdigit, kill, labs, ldexp, ldiv, link, localeconv, localtime, log, log10,
+longjmp, lseek, malloc, mblen, mbstowcs, mbtowc, memchr, memcmp, memcpy,
+memmove, memset, mkdir, mkfifo, mktime, modf, nice, offsetof, open,
+opendir, pathconf, pause, perror, pipe, pow, printf, putc, putchar, puts,
+qsort, raise, rand, read, readdir, realloc, remove, rename, rewind,
+rewinddir, rmdir, scanf, setgid, setjmp, setlocale, setpgid, setsid,
+setuid, sigaction, siglongjmp, sigpending, sigprocmask, sigsetjmp,
+sigsuspend, sin, sinh, sleep, sprintf, sqrt, srand, sscanf, stat, strcat,
+strchr, strcmp, strcoll, strcpy, strcspn, strerror, strftime, strlen,
+strncat, strncmp, strncpy, stroul, strpbrk, strrchr, strspn, strstr,
+strtod, strtok, strtol, strtoul, strxfrm, sysconf, system, tan, tanh,
+tcdrain, tcflow, tcflush, tcgetpgrp, tcsendbreak, tcsetpgrp, time, times,
+tmpfile, tmpnam, tolower, toupper, ttyname, tzname, tzset, umask, uname,
+ungetc, unlink, utime, vfprintf, vprintf, vsprintf, wait, waitpid,
+wcstombs, wctomb, write
=item CLASSES
-
=over
=item POSIX::SigAction
-
new
=item POSIX::SigSet
-
new, addset, delset, emptyset, fillset, ismember
=item POSIX::Termios
-
new, getattr, getcc, getcflag, getiflag, getispeed, getlflag, getoflag,
getospeed, setattr, setcc, setcflag, setiflag, setispeed, setlflag,
setoflag, setospeed, Baud rate values, Terminal interface values, c_cc
field values, c_cflag field values, c_iflag field values, c_lflag field
values, c_oflag field values
-
-
=back
=item PATHNAME CONSTANTS
-
Constants
=item POSIX CONSTANTS
-
Constants
=item SYSTEM CONFIGURATION
-
Constants
=item ERRNO
-
Constants
=item FCNTL
-
Constants
=item FLOAT
-
Constants
=item LIMITS
-
Constants
=item LOCALE
-
Constants
=item MATH
-
Constants
=item SIGNAL
-
Constants
=item STAT
-
Constants, Macros
=item STDLIB
-
Constants
=item STDIO
-
Constants
=item TIME
-
Constants
=item UNISTD
-
Constants
=item WAIT
-
Constants, Macros
=item CREATION
-
-
-
-
=head2 Pod::Text - convert POD data to formatted ASCII text
=item SYNOPSIS
-
=item DESCRIPTION
-
=item AUTHOR
-
=item TODO
+=head2 SDBM_File - Tied access to sdbm files
+=item SYNOPSIS
+=item DESCRIPTION
+=head2 Safe - Compile and execute code in restricted compartments
-=head2 Safe - Safe extension module for Perl
+=item SYNOPSIS
=item DESCRIPTION
-
a new namespace, an operator mask
-=over
+=item WARNING
-=item Operator masks
+=over
+=item RECENT CHANGES
=item Methods in class Safe
+permit (OP, ...), permit_only (OP, ...), deny (OP, ...), deny_only (OP,
+...), trap (OP, ...), untrap (OP, ...), share (NAME, ...), share_from
+(PACKAGE, ARRAYREF), varglob (VARNAME), reval (STRING), rdo (FILENAME),
+root (NAMESPACE), mask (MASK)
-NAMESPACE, MASK, root (NAMESPACE), mask (MASK), trap (OP, ...), untrap
-(OP, ...), share (VARNAME, ...), varglob (VARNAME), reval (STRING), rdo
-(FILENAME)
+=item Some Safety Issues
-=item Subroutines in package Safe
-
-
-ops_to_mask (OP, ...), mask_to_ops (MASK), opcode (OP, ...), opname
-(OP, ...), fullmask, emptymask, MAXO, op_mask
+Memory, CPU, Snooping, Signals, State Changes
=item AUTHOR
-
-
-
=back
-
-
-
=head2 Search::Dict, look - search for key in dictionary file
=item SYNOPSIS
-
=item DESCRIPTION
-
-
-
-
=head2 SelectSaver - save and restore selected file handle
=item SYNOPSIS
-
=item DESCRIPTION
-
-
-
-
=head2 SelfLoader - load functions only on demand
=item SYNOPSIS
-
=item DESCRIPTION
-
=over
=item The __DATA__ token
-
=item SelfLoader autoloading
-
=item Autoloading and package lexicals
-
=item SelfLoader and AutoLoader
-
=item __DATA__, __END__, and the FOOBAR::DATA filehandle.
-
=item Classes and inherited methods.
-
-
-
=back
=item Multiple packages and fully qualified subroutine names
-
-
-
-
-=head2 Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa - load
-the C socket.h defines and structure manipulators
+=head2 Shell - run shell commands transparently within perl
=item SYNOPSIS
-
=item DESCRIPTION
+=item AUTHOR
-inet_aton HOSTNAME, inet_ntoa IP_ADDRESS, INADDR_ANY, INADDR_LOOPBACK,
-INADDR_NONE, sockaddr_in PORT, ADDRESS, sockaddr_in SOCKADDR_IN,
-pack_sockaddr_in PORT, IP_ADDRESS, unpack_sockaddr_in SOCKADDR_IN,
-sockaddr_un PATHNAME, sockaddr_un SOCKADDR_UN, pack_sockaddr_un PATH,
-unpack_sockaddr_un SOCKADDR_UN
+=head2 Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa - load the C
+socket.h defines and structure manipulators
+=item SYNOPSIS
+=item DESCRIPTION
+inet_aton HOSTNAME, inet_ntoa IP_ADDRESS, INADDR_ANY, INADDR_BROADCAST,
+INADDR_LOOPBACK, INADDR_NONE, sockaddr_in PORT, ADDRESS, sockaddr_in
+SOCKADDR_IN, pack_sockaddr_in PORT, IP_ADDRESS, unpack_sockaddr_in
+SOCKADDR_IN, sockaddr_un PATHNAME, sockaddr_un SOCKADDR_UN,
+pack_sockaddr_un PATH, unpack_sockaddr_un SOCKADDR_UN
=head2 Symbol - manipulate Perl symbols and their names
=item SYNOPSIS
-
=item DESCRIPTION
-
-
-
-
=head2 Sys::Hostname - Try every conceivable way to get hostname
=item SYNOPSIS
-
=item DESCRIPTION
-
=item AUTHOR
-
-
-
-
-=head2 Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog -
-Perl interface to the UNIX syslog(3) calls
+=head2 Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl
+interface to the UNIX syslog(3) calls
=item SYNOPSIS
-
=item DESCRIPTION
-
-openlog $ident, $logopt, $facility, syslog $priority, $mask, $format,
-@args, setlogmask $mask_priority, closelog
+openlog $ident, $logopt, $facility, syslog $priority, $format, @args,
+setlogmask $mask_priority, closelog
=item EXAMPLES
-
=item DEPENDENCIES
-
=item SEE ALSO
-
=item AUTHOR
-
-
-
-
=head2 Term::Cap - Perl termcap interface
=item SYNOPSIS
-
=item DESCRIPTION
-
=item EXAMPLES
-
-
-
-
=head2 Term::Complete - Perl word completion module
=item SYNOPSIS
-
=item DESCRIPTION
-
-<tab>Attempts word completion. Cannot be changed, ^D, ^U, <del>, <bs>
+E<lt>tabE<gt>Attempts word completion.
+Cannot be changed, ^D, ^U, E<lt>delE<gt>, E<lt>bsE<gt>
=item DIAGNOSTICS
-
=item BUGS
-
=item AUTHOR
-
-
-
-
-=head2 Term::ReadLine - Perl interface to various C<readline> packages.
-If no real package is found, substitutes stubs instead of basic
-functions.
+=head2 Term::ReadLine - Perl interface to various C<readline> packages. If
+no real package is found, substitutes stubs instead of basic functions.
=item SYNOPSIS
-
=item DESCRIPTION
-
=item Minimal set of supported functions
-
C<ReadLine>, C<new>, C<readline>, C<addhistory>, C<IN>, $C<OUT>,
C<MinLine>, C<findConsole>, C<Features>
=item EXPORTS
-
-
-
-
=head2 Test::Harness - run perl standard test scripts with statistics
=item SYNOPSIS
-
=item DESCRIPTION
-
=over
=item The test script output
-
-
-
=back
=item EXPORT
-
=item DIAGNOSTICS
-
C<All tests successful.\nFiles=%d, Tests=%d, %s>, C<FAILED tests
-%s\n\tFailed %d/%d tests, %.2f%% okay.>, C<Test returned status %d
-(wstat %d)>, C<Failed 1 test, %.2f%% okay. %s>, C<Failed %d/%d tests,
-%.2f%% okay. %s>
+%s\n\tFailed %d/%d tests, %.2f%% okay.>, C<Test returned status %d (wstat
+%d)>, C<Failed 1 test, %.2f%% okay. %s>, C<Failed %d/%d tests, %.2f%% okay.
+%s>
=item SEE ALSO
-
=item AUTHORS
-
=item BUGS
-
-
-
-
=head2 Text::Abbrev, abbrev - create an abbreviation table from a list
=item SYNOPSIS
-
=item DESCRIPTION
-
=item EXAMPLE
+=head2 Text::ParseWords - parse text into an array of tokens
+=item SYNOPSIS
+=item DESCRIPTION
+=item AUTHORS
-=head2 Text::Soundex - Implementation of the Soundex Algorithm as
-Described by Knuth
+=head2 Text::Soundex - Implementation of the Soundex Algorithm as Described
+by Knuth
=item SYNOPSIS
-
=item DESCRIPTION
-
=item EXAMPLES
-
=item LIMITATIONS
-
=item AUTHOR
+=head2 Text::Tabs -- expand and unexpand tabs per the unix expand(1) and
+unexpand(1)
+=item SYNOPSIS
+=item DESCRIPTION
+=item BUGS
-=head2 Text::Tabs -- expand and unexpand tabs
+=item AUTHOR
-=item SYNOPSIS
+=head2 Text::Wrap - line wrapping to form simple paragraphs
+=item SYNOPSIS
=item DESCRIPTION
+=item EXAMPLE
=item AUTHOR
+=head2 Tie::Hash, Tie::StdHash - base class definitions for tied hashes
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+TIEHASH classname, LIST, STORE this, key, value, FETCH this, key, FIRSTKEY
+this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR this
+=item CAVEATS
+=item MORE INFORMATION
-=head2 Text::Wrap -- wrap text into a paragraph
+=head2 Tie::RefHash - use references as hash keys
=item SYNOPSIS
-
=item DESCRIPTION
+=item EXAMPLE
=item AUTHOR
+=item VERSION
+=item SEE ALSO
-
-
-=head2 Tie::Hash, Tie::StdHash - base class definitions for tied hashes
+=head2 Tie::Scalar, Tie::StdScalar - base class definitions for tied
+scalars
=item SYNOPSIS
-
=item DESCRIPTION
+TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
-TIEHASH classname, LIST, STORE this, key, value, FETCH this, key,
-FIRSTKEY this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this,
-key, CLEAR this
+=item MORE INFORMATION
-=item CAVEATS
+=head2 Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing
+=item SYNOPSIS
-=item MORE INFORMATION
+=item DESCRIPTION
+=item CAVEATS
+=head2 Time::Local - efficiently compute time from local and GMT time
+=item SYNOPSIS
+=item DESCRIPTION
-=head2 Tie::Scalar, Tie::StdScalar - base class definitions for tied
-scalars
+=head2 Time::gmtime - by-name interface to Perl's built-in gmtime()
+function
=item SYNOPSIS
-
=item DESCRIPTION
+=item NOTE
-TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
+=item AUTHOR
-=item MORE INFORMATION
+=head2 Time::localtime - by-name interface to Perl's built-in localtime()
+function
+=item SYNOPSIS
+=item DESCRIPTION
+=item NOTE
+=item AUTHOR
-=head2 Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing
+=head2 Time::tm - internal object used by Time::gmtime and Time::localtime
=item SYNOPSIS
+=item DESCRIPTION
+
+=item AUTHOR
+
+=head2 UNIVERSAL - base class for ALL classes (blessed references)
+
+=item SYNOPSIS
=item DESCRIPTION
+isa ( TYPE ), can ( METHOD ), VERSION ( [ REQUIRE ] ), isa ( REF, TYPE )
-=item CAVEATS
+=head2 User::grent - by-name interface to Perl's built-in getgr*()
+functions
+=item SYNOPSIS
+=item DESCRIPTION
+=item NOTE
+=item AUTHOR
-=head2 Time::Local - efficiently compute tome from local and GMT time
+=head2 User::pwent - by-name interface to Perl's built-in getpw*()
+functions
=item SYNOPSIS
-
=item DESCRIPTION
+=item NOTE
-
+=item AUTHOR
=head1 AUXILIARY DOCUMENTATION
-Here should be listed all the extra program's documentation, but they don't all
-have manual pages yet:
+Here should be listed all the extra programs' documentation, but they
+don't all have manual pages yet:
=item a2p
@@ -3178,10 +3506,8 @@ have manual pages yet:
=item wrapsuid
-
=head1 AUTHOR
-Larry Wall E<lt>F<larry@wall.org>E<gt>, with the help of oodles of
-other folks.
-
+Larry Wall E<lt>F<larry@wall.org>E<gt>, with the help of oodles
+of other folks.