-
NAME
-
DESCRIPTION
-
BASIC
DOCUMENTATION
- perl - Practical Extraction and Report Language
- perlfaq - frequently asked questions about Perl ($Date: 1999/05/23
- perlfaq1 - General Questions About Perl ($Revision: 1.23 $, $Date:
- perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.32 $,
- perlfaq3 - Programming Tools ($Revision: 1.38 $, $Date: 1999/05/23
- perlfaq4 - Data Manipulation ($Revision: 1.49 $, $Date: 1999/05/23
- perlfaq5 - Files and Formats ($Revision: 1.38 $, $Date: 1999/05/23
- perlfaq6 - Regexes ($Revision: 1.27 $, $Date: 1999/05/23 16:08:30 $)
- perlfaq7 - Perl Language Issues ($Revision: 1.28 $, $Date:
- perlfaq8 - System Interaction ($Revision: 1.39 $, $Date: 1999/05/23
- perlfaq9 - Networking ($Revision: 1.26 $, $Date: 1999/05/23 16:08:30
- perldelta - what's new for perl v5.6.0
- perldata - Perl data types
- perlsyn - Perl syntax
- perlop - Perl operators and precedence
- perlre - Perl regular expressions
- perlrun - how to execute the Perl interpreter
- perlfunc - Perl builtin functions
- perlvar - Perl predefined variables
- perlsub - Perl subroutines
- perlmod - Perl modules (packages and symbol tables)
- perlmodlib - constructing new Perl modules and finding existing ones
- perlmodinstall - Installing
CPAN Modules
- perlfork - Perl's
fork() emulation
- perlform - Perl formats
- perllocale - Perl locale handling (internationalization and
- perlref - Perl references and nested data structures
- perlreftut - Mark's very short tutorial about references
- perldsc - Perl Data Structures Cookbook
- perllol - Manipulating Arrays of Arrays in Perl
- perlboot - Beginner's Object-Oriented Tutorial
- perltoot - Tom's object-oriented tutorial for perl
- perltootc - Tom's
OO Tutorial for Class Data in Perl
- perlobj - Perl objects
- perltie - how to hide an object class in a simple variable
- perlbot - Bag'o Object Tricks (the
BOT)
- perlipc - Perl interprocess communication (signals, fifos, pipes,
- perldbmfilter - Perl
DBM Filters
- perldebug - Perl debugging
- perlnumber - semantics of numbers and numeric operations in Perl
- perldebguts - Guts of Perl debugging
- perldiag - various Perl diagnostics
- perlsec - Perl security
- perltrap - Perl traps for the unwary
- perlport - Writing portable Perl
- perlstyle - Perl style guide
- perlpod - plain old documentation
- perlbook - Perl book information
- perlembed - how to embed perl in your
C program
- perlapio - perl's
IO abstraction interface.
- perlxs -
XS language reference manual
- perlxstut, perlXStut - Tutorial for writing XSUBs
- perlguts - Introduction to the Perl
API
- perlcall - Perl calling conventions from
C
- perlcompile - Introduction to the Perl Compiler-Translator
- perlapi - autogenerated documentation for the perl public
API
- perlintern - autogenerated documentation of purely internal
- perlhist - the Perl history records
-
PRAGMA
DOCUMENTATION
-
MODULE
DOCUMENTATION
- AnyDBM_File - provide framework for multiple DBMs
- AutoLoader - load subroutines only on demand
- AutoSplit - split a package for autoloading
-
B - The Perl Compiler
- B::Asmdata - Autogenerated data about Perl ops, used to generate
- B::Assembler - Assemble Perl bytecode
- B::Bblock - Walk basic blocks
- B::Bytecode - Perl compiler's bytecode backend
-
B::C - Perl compiler's
C backend
-
B::CC - Perl compiler's optimized
C translation backend
- B::Debug - Walk Perl syntax tree, printing debug info about ops
- B::Deparse - Perl compiler backend to produce perl code
- B::Disassembler - Disassemble Perl bytecode
- B::Lint - Perl lint
-
B::O,
O - Generic interface to Perl Compiler backends
- B::Showlex - Show lexical variables used in functions or files
- B::Stackobj - Helper module for
CC backend
- B::Terse - Walk Perl syntax tree, printing terse info about ops
- B::Xref - Generates cross reference reports for Perl programs
- Bblock, B::Bblock - Walk basic blocks
- Benchmark - benchmark running times of Perl code
- ByteLoader - load byte compiled perl code
- Bytecode, B::Bytecode - Perl compiler's bytecode backend
-
CGI - Simple Common Gateway Interface Class
- CGI::Apache - Backward compatibility module for CGI.pm
- CGI::Carp, CGI::Carp -
CGI routines for writing to the
HTTPD (or
- CGI::Cookie - Interface to Netscape Cookies
- CGI::Fast -
CGI Interface for Fast
CGI
- CGI::Pretty - module to produce nicely formatted
HTML code
- CGI::Push - Simple Interface to Server Push
- CGI::Switch - Backward compatibility module for defunct CGI::Switch
-
CPAN - query, download and build perl modules from
CPAN sites
- CPAN::FirstTime - Utility for CPAN::Config file Initialization
- CPANox, CPAN::Nox - Wrapper around CPAN.pm without using any
XS
- Carp, carp - warn of errors (from perspective of caller)
- Carp::Heavy - Carp guts
- Class::Struct - declare struct-like datatypes as Perl classes
- Config - access Perl configuration information
- Cwd, getcwd - get pathname of current working directory
-
DB - programmatic interface to the Perl debugging
API (draft,
- DB_File - Perl5 access to Berkeley
DB version 1.x
- Data::Dumper - stringified perl data structures, suitable for both
- Devel::DProf - a Perl code profiler
- Devel::Peek -
A data debugging tool for the
XS programmer
- Devel::SelfStubber - generate stubs for a SelfLoading module
- DirHandle - supply object methods for directory handles
- Dumpvalue - provides screen dump of Perl data.
- DynaLoader - Dynamically load
C libraries into Perl code
- DynaLoader::XSLoader, XSLoader - Dynamically load
C libraries into
- English - use nice English (or awk) names for ugly punctuation
- Env - perl module that imports environment variables as scalars or
- Errno - System errno constants
- Exporter - Implements default import method for modules
- Exporter::Heavy - Exporter guts
- ExtUtils::Command - utilities to replace common
UNIX commands in
- ExtUtils::Embed - Utilities for embedding Perl in
C/C++ applications
- ExtUtils::Install - install files from here to there
- ExtUtils::Installed - Inventory management of installed modules
- ExtUtils::Liblist - determine libraries to use and how to use them
- ExtUtils::MM_Cygwin - methods to override
UN*X behaviour in
- ExtUtils::MM_OS2 - methods to override
UN*X behaviour in
- ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
- ExtUtils::MM_VMS - methods to override
UN*X behaviour in
- ExtUtils::MM_Win32 - methods to override
UN*X behaviour in
- ExtUtils::MakeMaker - create an extension Makefile
- ExtUtils::Manifest - utilities to write and check a
MANIFEST file
- ExtUtils::Miniperl, writemain - write the
C code for perlmain.c
- ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
- ExtUtils::Mksymlists - write linker options files for dynamic
- ExtUtils::Packlist - manage .packlist files
- ExtUtils::testlib - add blib/* directories to
@INC
- Fatal - replace functions with equivalents which succeed or die
- Fcntl - load the
C Fcntl.h defines
- File::Basename, fileparse - split a pathname into pieces
- File::CheckTree, validate - run many filetest checks on a tree
- File::Compare - Compare files or filehandles
- File::Copy - Copy files or filehandles
- File::DosGlob -
DOS like globbing and then some
- File::Find, find - traverse a file tree
- File::Glob - Perl extension for
BSD glob routine
- File::Path - create or remove directory trees
- File::Spec - portably perform operations on file names
- File::Spec::Functions - portably perform operations on file names
- File::Spec::Mac - File::Spec for MacOS
- File::Spec::OS2 - methods for
OS/2 file specs
- File::Spec::Unix - methods used by File::Spec
- File::Spec::VMS - methods for
VMS file specs
- File::Spec::Win32 - methods for Win32 file specs
- File::stat - by-name interface to Perl's built-in
stat() functions
- FileCache - keep more files open than the system permits
- FileHandle - supply object methods for filehandles
- FindBin - Locate directory of original perl script
- GDBM_File - Perl5 access to the gdbm library.
- Getopt::Long - Extended processing of command line options
- Getopt::Std, getopt - Process single-character switches with switch
- I18N::Collate - compare 8-bit scalar data according to the current
-
IO - load various
IO modules
- IO::Dir - supply object methods for directory handles
- IO::File - supply object methods for filehandles
- IO::Handle - supply object methods for
I/O handles
- IO::Pipe - supply object methods for pipes
- IO::Poll - Object interface to system poll call
- IO::Seekable - supply seek based methods for
I/O objects
- IO::Select -
OO interface to the select system call
- IO::Socket - Object interface to socket communications
- IO::Socket::INET - Object interface for
AF_INET domain sockets
- IO::Socket::UNIX - Object interface for
AF_UNIX domain sockets
- IO::lib::IO::Dir, IO::Dir - supply object methods for directory
- IO::lib::IO::File, IO::File - supply object methods for filehandles
- IO::lib::IO::Handle, IO::Handle - supply object methods for
I/O
- IO::lib::IO::Pipe, IO::Pipe - supply object methods for pipes
- IO::lib::IO::Poll, IO::Poll - Object interface to system poll call
- IO::lib::IO::Seekable, IO::Seekable - supply seek based methods for
- IO::lib::IO::Select, IO::Select -
OO interface to the select system
- IO::lib::IO::Socket, IO::Socket - Object interface to socket
- IO::lib::IO::Socket::INET, IO::Socket::INET - Object interface for
- IO::lib::IO::Socket::UNIX, IO::Socket::UNIX - Object interface for
- IPC::Msg - SysV Msg
IPC object class
- IPC::Open2, open2 - open a process for both reading and writing
- IPC::Open3, open3 - open a process for reading, writing, and error
- IPC::Semaphore - SysV Semaphore
IPC object class
- IPC::SysV - SysV
IPC constants
- IPC::SysV::Msg, IPC::Msg - SysV Msg
IPC object class
- IPC::SysV::Semaphore, IPC::Semaphore - SysV Semaphore
IPC object
- Math::BigFloat - Arbitrary length float math package
- Math::BigInt - Arbitrary size integer math package
- Math::Trig - trigonometric functions
- NDBM_File - Tied access to ndbm files
- Net::Ping - check a remote host for reachability
- Net::hostent - by-name interface to Perl's built-in gethost*()
- Net::netent - by-name interface to Perl's built-in getnet*()
- Net::protoent - by-name interface to Perl's built-in getproto*()
- Net::servent - by-name interface to Perl's built-in getserv*()
-
O - Generic interface to Perl Compiler backends
- ODBM_File - Tied access to odbm files
- Opcode - Disable named opcodes when compiling perl code
- Opcode::Safe, Safe - Compile and execute code in restricted
- Opcode::ops, ops - Perl pragma to restrict unsafe operations when
-
POSIX - Perl interface to
IEEE Std 1003.1
- Pod::Checker,
podchecker() - check pod documents for syntax errors
- Pod::Find - find
POD documents in directory trees
- Pod::Html - module to convert pod files to
HTML
- Pod::InputObjects - objects representing
POD input paragraphs,
- Pod::Man - Convert
POD data to formatted *roff input
- Pod::ParseUtils - helpers for
POD parsing and conversion
- Pod::Parser - base class for creating
POD filters and translators
- Pod::Plainer - Perl extension for converting Pod to old style Pod.
- Pod::Select,
podselect() - extract selected sections of
POD from
- Pod::Text - Convert
POD data to formatted
ASCII text
- Pod::Text::Color - Convert
POD data to formatted color
ASCII text
- Pod::Text::Termcap, Pod::Text::Color - Convert
POD data to
ASCII
- Pod::Usage,
pod2usage() - print a usage message from embedded pod
- SDBM_File - Tied access to sdbm files
- Safe - Compile and execute code in restricted compartments
- Search::Dict, look - search for key in dictionary file
- SelectSaver - save and restore selected file handle
- SelfLoader - load functions only on demand
- Shell - run shell commands transparently within perl
- Socket, sockaddr_in, sockaddr_un, inet_aton, inet_ntoa - load the
C
- Symbol - manipulate Perl symbols and their names
- Sys::Hostname - Try every conceivable way to get hostname
- Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog - Perl
- Syslog::Syslog, Sys::Syslog, openlog, closelog, setlogmask, syslog -
- Term::ANSIColor - Color screen output using
ANSI escape sequences
- Term::Cap - Perl termcap interface
- Term::Complete - Perl word completion module
- Term::ReadLine - Perl interface to various
readline packages. If
- Test - provides a simple framework for writing test scripts
- Test::Harness - run perl standard test scripts with statistics
- Text::Abbrev, abbrev - create an abbreviation table from a list
- Text::ParseWords - parse text into an array of tokens or array of
- Text::Soundex - Implementation of the Soundex Algorithm as Described
- Text::Tabs - expand and unexpand tabs per the unix
expand(1) and
- Text::Wrap - line wrapping to form simple paragraphs
- Thread - manipulate threads in Perl
(EXPERIMENTAL, subject to
- Thread::Queue - thread-safe queues
- Thread::Semaphore - thread-safe semaphores
- Thread::Signal - Start a thread which runs signal handlers reliably
- Thread::Specific - thread-specific keys
- Tie::Array - base class for tied arrays
- Tie::Handle, Tie::StdHandle - base class definitions for tied
- Tie::Hash, Tie::StdHash - base class definitions for tied hashes
- Tie::RefHash - use references as hash keys
- Tie::Scalar, Tie::StdScalar - base class definitions for tied
- Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing
- Time::Local - efficiently compute time from local and
GMT time
- Time::gmtime - by-name interface to Perl's built-in
gmtime()
- Time::localtime - by-name interface to Perl's built-in
localtime()
- Time::tm - internal object used by Time::gmtime and Time::localtime
-
UNIVERSAL - base class for
ALL classes (blessed references)
- User::grent - by-name interface to Perl's built-in getgr*()
- User::pwent - by-name interface to Perl's built-in getpw*()
- XSLoader - Dynamically load
C libraries into Perl code
-
AUXILIARY
DOCUMENTATION
-
AUTHOR
perltoc - perl documentation table of contents
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
through to locate the proper section you're looking for.
-
SYNOPSIS
-
-
DESCRIPTION
-
modularity and reusability using innumerable modules, embeddable and
extensible, roll-your-own magic variables (including multiple simultaneous
DBM implementations), subroutines can now be overridden, autoloaded, and
prototyped, arbitrarily nested data structures and anonymous functions,
object-oriented programming, compilability into
C code or Perl bytecode,
support for light-weight processes (threads), support for
internationalization, localization, and Unicode, lexical scoping, regular
expression enhancements, enhanced debugger and interactive Perl
environment, with integrated editor support,
POSIX 1003.1 compliant library
-
AVAILABILITY
-
-
ENVIRONMENT
-
-
AUTHOR
-
-
FILES
-
-
SEE
ALSO
-
-
DIAGNOSTICS
-
-
BUGS
-
-
NOTES
-
-
DESCRIPTION
-
perlfaq: Structural overview of the
FAQ, the perlfaq1 manpage: General Questions
About Perl, What is Perl?, Who supports Perl? Who develops it? Why is it
free?, Which version of Perl should
I use?, What are perl4 and perl5?, What
is perl6?, How stable is Perl?, Is Perl difficult to learn?, How does Perl
compare with other languages like Java, Python,
REXX, Scheme, or Tcl?, Can
I do [task] in Perl?, When shouldn't
I program in Perl?, What's the
difference between ``perl'' and ``Perl''?, Is it a Perl program or a Perl
script?, What is a
JAPH?, Where can
I get a list of Larry Wall witticisms?,
How can
I convince my sysadmin/supervisor/employees to use version
(5/5.005/Perl instead of some other language)?, the perlfaq2 manpage: Obtaining and
Learning about Perl, What machines support Perl? Where do
I get it?, How
can
I get a binary version of Perl?,
I don't have a
C compiler on my
system. How can
I compile perl?,
I copied the Perl binary from one machine
to another, but scripts don't work,
I grabbed the sources and tried to
compile but gdbm/dynamic loading/malloc/linking/... failed. How do
I make
it work?, What modules and extensions are available for Perl? What is
CPAN? What does CPAN/src/... mean?, Is there an
ISO or
ANSI certified
version of Perl?, Where can
I get information on Perl?, What are the Perl
newsgroups on
USENET? Where do
I post questions?, Where should
I post
source code?, Perl Books, Perl in Magazines, Perl on the Net:
FTP and
WWW
Access, What mailing lists are there for perl?, Archives of
comp.lang.perl.misc, Where can
I buy a commercial version of Perl?, Where
do
I send bug reports?, What is perl.com?, the perlfaq3 manpage: Programming Tools,
How do
I do (anything)?, How can
I use Perl interactively?, Is there a Perl
shell?, How do
I debug my Perl programs?, How do
I profile my Perl
programs?, How do
I cross-reference my Perl programs?, Is there a
pretty-printer (formatter) for Perl?, Is there a ctags for Perl?, Is there
an
IDE or Windows Perl Editor?, Where can
I get Perl macros for vi?, Where
can
I get perl-mode for emacs?, How can
I use curses with Perl?, How can
I
use
X or Tk with Perl?, How can
I generate simple menus without using
CGI
or Tk?, What is undump?, How can
I make my Perl program run faster?, How
can
I make my Perl program take less memory?, Is it unsafe to return a
pointer to local data?, How can
I free an array or hash so my program
shrinks?, How can
I make my
CGI script more efficient?, How can
I hide the
source for my Perl program?, How can
I compile my Perl program into byte
code or
C?, How can
I compile Perl into Java?, How can
I get
#!perl to
work on
[MS-DOS,NT,...]?, Can
I write useful perl programs on the command
line?, Why don't perl one-liners work on my DOS/Mac/VMS system?, Where can
I learn about
CGI or Web programming in Perl?, Where can
I learn about
object-oriented Perl programming?, Where can
I learn about linking
C with
Perl? [h2xs, xsubpp], I've read perlembed, perlguts, etc., but
I can't
embed perl inmy
C program, what am
I doing wrong?, When
I tried to run my
script,
I got this message. What does itmean?, What's MakeMaker?,
the perlfaq4 manpage: Data Manipulation, Why am
I getting long decimals (eg,
19.9499999999999) instead of the numbers
I should be getting (eg, 19.95)?,
Why isn't my octal data interpreted correctly?, Does Perl have a round()
function? What about ceil() and floor()? Trig functions?, How do
I
convert bits into ints?, Why doesn't & work the way
I want it to?, How do
I
multiply matrices?, How do
I perform an operation on a series of integers?,
How can
I output Roman numerals?, Why aren't my random numbers random?, How
do
I find the week-of-the-year/day-of-the-year?, How do
I find the current
century or millennium?, How can
I compare two dates and find the
difference?, How can
I take a string and turn it into epoch seconds?, How
can
I find the Julian Day?, How do
I find yesterday's date?, Does Perl have
a year 2000 problem? Is Perl
Y2K compliant?, How do
I validate input?, How
do
I unescape a string?, How do
I remove consecutive pairs of characters?,
How do
I expand function calls in a string?, How do
I find matching/nesting
anything?, How do
I reverse a string?, How do
I expand tabs in a string?,
How do
I reformat a paragraph?, How can
I access/change the first
N letters
of a string?, How do
I change the Nth occurrence of something?, How can
I
count the number of occurrences of a substring within a string?, How do
I
capitalize all the words on one line?, How can
I split a [character]
delimited string except when inside[character]? (Comma-separated files),
How do
I strip blank space from the beginning/end of a string?, How do
I
pad a string with blanks or pad a number with zeroes?, How do
I extract
selected columns from a string?, How do
I find the soundex value of a
string?, How can
I expand variables in text strings?, What's wrong with
always quoting ``$vars''?, Why don't my
<<HERE documents work?, What is the
difference between a list and an array?, What is the difference between
$array[1] and @array[1]?, How can
I remove duplicate elements from a list
or array?, How can
I tell whether a list or array contains a certain
element?, How do
I compute the difference of two arrays? How do
I compute
the intersection of two arrays?, How do
I test whether two arrays or hashes
are equal?, How do
I find the first array element for which a condition is
true?, How do
I handle linked lists?, How do
I handle circular lists?, How
do
I shuffle an array randomly?, How do
I process/modify each element of an
array?, How do
I select a random element from an array?, How do
I permute
N
elements of a list?, How do
I sort an array by (anything)?, How do
I
manipulate arrays of bits?, Why does defined() return true on empty arrays
and hashes?, How do
I process an entire hash?, What happens if
I add or
remove keys from a hash while iterating over it?, How do
I look up a hash
element by value?, How can
I know how many entries are in a hash?, How do
I
sort a hash (optionally by value instead of key)?, How can
I always keep my
hash sorted?, What's the difference between ``delete'' and ``undef'' with
hashes?, Why don't my tied hashes make the defined/exists distinction?, How
do
I reset an each() operation part-way through?, How can
I get the unique
keys from two hashes?, How can
I store a multidimensional array in a
DBM
file?, How can
I make my hash remember the order
I put elements into it?,
Why does passing a subroutine an undefined element in a hash create it?,
How can
I make the Perl equivalent of a
C structure/C++ class/hash or array
of hashes or arrays?, How can
I use a reference as a hash key?, How do
I
handle binary data correctly?, How do
I determine whether a scalar is a
number/whole/integer/float?, How do
I keep persistent data across program
calls?, How do
I print out or copy a recursive data structure?, How do
I
define methods for every class/object?, How do
I verify a credit card
checksum?, How do
I pack arrays of doubles or floats for
XS code?,
the perlfaq5 manpage: Files and Formats, How do
I flush/unbuffer an output
filehandle? Why must
I do this?, How do
I change one line in a file/delete
a line in a file/insert a line in the middle of a file/append to the
beginning of a file?, How do
I count the number of lines in a file?, How do
I make a temporary file name?, How can
I manipulate fixed-record-length
files?, How can
I make a filehandle local to a subroutine? How do
I pass
filehandles between subroutines? How do
I make an array of filehandles?,
How can
I use a filehandle indirectly?, How can
I set up a footer format to
be used with write()?, How can
I write() into a string?, How can
I output
my numbers with commas added?, How can
I translate tildes (~) in a
filename?, How come when
I open a file read-write it wipes it out?, Why do
I sometimes get an ``Argument list too long'' when
I use <*>?, Is there a
leak/bug in glob()?, How can
I open a file with a leading ``>'' or trailing
blanks?, How can
I reliably rename a file?, How can
I lock a file?, Why
can't
I just open(FH, ``>file.lock'')?,
I still don't get locking.
I just
want to increment the number in the file. How can
I do this?, How do
I
randomly update a binary file?, How do
I get a file's timestamp in perl?,
How do
I set a file's timestamp in perl?, How do
I print to more than one
file at once?, How can
I read in an entire file all at once?, How can
I
read in a file by paragraphs?, How can
I read a single character from a
file? From the keyboard?, How can
I tell whether there's a character
waiting on a filehandle?, How do
I do a tail -f in perl?, How do
I dup()
a filehandle in Perl?, How do
I close a file descriptor by number?, Why
can't
I use ``C:\temp\foo'' in
DOS paths? What doesn't `C:\temp\foo.exe`
work?, Why doesn't glob(``*.*'') get all the files?, Why does Perl let me
delete read-only files? Why does -i clobber protected files? Isn't
this a bug in Perl?, How do
I select a random line from a file?, Why do
I
get weird spaces when
I print an array of lines?, the perlfaq6 manpage: Regexps, How
can
I hope to use regular expressions without creating illegible and
unmaintainable code?, I'm having trouble matching over more than one line.
What's wrong?, How can
I pull out lines between two patterns that are
themselves on different lines?,
I put a regular expression into $/ but it
didn't work. What's wrong?, How do
I substitute case insensitively on the
LHS, but preserving case on the
RHS?, How can
I make \w match national
character sets?, How can
I match a locale-smart version of /[a-zA-Z]/?,
How can
I quote a variable to use in a regex?, What is /o really for?,
How do
I use a regular expression to strip
C style comments from a file?,
Can
I use Perl regular expressions to match balanced text?, What does it
mean that regexes are greedy? How can
I get around it?, How do
I process
each word on each line?, How can
I print out a word-frequency or
line-frequency summary?, How can
I do approximate matching?, How do
I
efficiently match many regular expressions at once?, Why don't
word-boundary searches with \b work for me?, Why does using $&, $`, or
$' slow my program down?, What good is \G in a regular expression?, Are
Perl regexes DFAs or NFAs? Are they
POSIX compliant?, What's wrong with
using grep or map in a void context?, How can
I match strings with
multibyte characters?, How do
I match a pattern that is supplied by the
user?, the perlfaq7 manpage: General Perl Language Issues, Can
I get a BNF/yacc/RE
for the Perl language?, What are all these $@%&* punctuation signs, and how
do
I know when to use them?, Do
I always/never have to quote my strings or
use semicolons and commas?, How do
I skip some return values?, How do
I
temporarily block warnings?, What's an extension?, Why do Perl operators
have different precedence than
C operators?, How do
I declare/create a
structure?, How do
I create a module?, How do
I create a class?, How can
I
tell if a variable is tainted?, What's a closure?, What is variable suicide
and how can
I prevent it?, How can
I pass/return a {Function, FileHandle,
Array, Hash, Method, Regex}?, How do
I create a static variable?, What's
the difference between dynamic and lexical (static) scoping? Between
local() and my()?, How can
I access a dynamic variable while a similarly
named lexical is in scope?, What's the difference between deep and shallow
binding?, Why doesn't ``my($foo) =
<FILE>;'' work right?, How do
I redefine a
builtin function, operator, or method?, What's the difference between
calling a function as &foo and foo()?, How do
I create a switch or case
statement?, How can
I catch accesses to undefined
variables/functions/methods?, Why can't a method included in this same file
be found?, How can
I find out my current package?, How can
I comment out a
large block of perl code?, How do
I clear a package?, How can
I use a
variable as a variable name?, the perlfaq8 manpage: System Interaction, How do
I
find out which operating system I'm running under?, How come exec() doesn't
return?, How do
I do fancy stuff with the keyboard/screen/mouse?, How do
I
print something out in color?, How do
I read just one key without waiting
for a return key?, How do
I check whether input is ready on the keyboard?,
How do
I clear the screen?, How do
I get the screen size?, How do
I ask the
user for a password?, How do
I read and write the serial port?, How do
I
decode encrypted password files?, How do
I start a process in the
background?, How do
I trap control characters/signals?, How do
I modify the
shadow password file on a Unix system?, How do
I set the time and date?,
How can
I sleep() or alarm() for under a second?, How can
I measure time
under a second?, How can
I do an atexit() or setjmp()/longjmp()? (Exception
handling), Why doesn't my sockets program work under System
V (Solaris)?
What does the error message ``Protocol not supported'' mean?, How can
I call
my system's unique
C functions from Perl?, Where do
I get the include files
to do ioctl() or syscall()?, Why do setuid perl scripts complain about
kernel problems?, How can
I open a pipe both to and from a command?, Why
can't
I get the output of a command with system()?, How can
I capture
STDERR from an external command?, Why doesn't open() return an error when a
pipe open fails?, What's wrong with using backticks in a void context?, How
can
I call backticks without shell processing?, Why can't my script read
from
STDIN after
I gave it
EOF
(^D on Unix,
^Z on
MS-DOS)?, How can
I
convert my shell script to perl?, Can
I use perl to run a telnet or ftp
session?, How can
I write expect in Perl?, Is there a way to hide perl's
command line from programs such as ``ps''?,
I {changed directory, modified my
environment} in a perl script. How come the change disappeared when
I
exited the script? How do
I get my changes to be visible?, How do
I close
a process's filehandle without waiting for it to complete?, How do
I fork a
daemon process?, How do
I make my program run with sh and csh?, How do
I
find out if I'm running interactively or not?, How do
I timeout a slow
event?, How do
I set
CPU limits?, How do
I avoid zombies on a Unix system?,
How do
I use an
SQL database?, How do
I make a system() exit on control-C?,
How do
I open a file without blocking?, How do
I install a module from
CPAN?, What's the difference between require and use?, How do
I keep my own
module/library directory?, How do
I add the directory my program lives in
to the module/library search path?, How do
I add a directory to my include
path at runtime?, What is socket.ph and where do
I get it?, the perlfaq9 manpage:
Networking, My
CGI script runs from the command line but not the browser.
(500 Server Error), How can
I get better error messages from a
CGI
program?, How do
I remove
HTML from a string?, How do
I extract URLs?, How
do
I download a file from the user's machine? How do
I open a file on
another machine?, How do
I make a pop-up menu in
HTML?, How do
I fetch an
HTML file?, How do
I automate an
HTML form submission?, How do
I decode or
create those %-encodings on the web?, How do
I redirect to another page?,
How do
I put a password on my web pages?, How do
I edit my .htpasswd and
.htgroup files with Perl?, How do
I make sure users can't enter values into
a form that cause my
CGI script to do bad things?, How do
I parse a mail
header?, How do
I decode a
CGI form?, How do
I check a valid mail address?,
How do
I decode a
MIME/BASE64 string?, How do
I return the user's mail
address?, How do
I send mail?, How do
I read mail?, How do
I find out my
hostname/domainname/IP address?, How do
I fetch a news article or the
active newsgroups?, How do
I fetch/put an
FTP file?, How can
I do
RPC in
Perl?
- Where to get this document
-
- How to contribute to this document
-
- What will happen if you mail your Perl programming problems to the
authors
-
- Credits
-
- Author and Copyright Information
-
- Bundled Distributions
-
- Disclaimer
-
- Changes
-
23/May/99, 13/April/99, 7/January/99, 22/June/98, 24/April/97, 23/April/97,
25/March/97, 18/March/97, 17/March/97 Version, Initial Release: 11/March/97
-
DESCRIPTION
-
- What is Perl?
-
- Who supports Perl? Who develops it? Why is it free?
-
- Which version of Perl should
I use?
-
- What are perl4 and perl5?
-
- What is perl6?
-
- How stable is Perl?
-
- Is Perl difficult to learn?
-
- How does Perl compare with other languages like Java, Python,
REXX,
Scheme, or Tcl?
-
- Can
I do [task] in Perl?
-
- When shouldn't
I program in Perl?
-
- What's the difference between ``perl'' and ``Perl''?
-
- Is it a Perl program or a Perl script?
-
- What is a
JAPH?
-
- Where can
I get a list of Larry Wall witticisms?
-
- How can
I convince my sysadmin/supervisor/employees to use version
(5/5.005/Perl instead of some other language)?
-
-
AUTHOR
AND
COPYRIGHT
-
-
DESCRIPTION
-
- What machines support Perl? Where do
I get it?
-
- How can
I get a binary version of Perl?
-
-
I don't have a
C compiler on my system. How can
I compile perl?
-
-
I copied the Perl binary from one machine to another, but scripts
don't work.
-
-
I grabbed the sources and tried to compile but gdbm/dynamic
loading/malloc/linking/... failed. How do
I make it work?
-
- What modules and extensions are available for Perl? What is
CPAN?
What does CPAN/src/... mean?
-
- Is there an
ISO or
ANSI certified version of Perl?
-
- Where can
I get information on Perl?
-
- What are the Perl newsgroups on Usenet? Where do
I post questions?
-
- Where should
I post source code?
-
- Perl Books
-
References, Tutorials, Task-Oriented, Special Topics
- Perl in Magazines
-
- Perl on the Net:
FTP and
WWW Access
-
- What mailing lists are there for Perl?
-
- Archives of comp.lang.perl.misc
-
- Where can
I buy a commercial version of Perl?
-
- Where do
I send bug reports?
-
- What is perl.com? Perl Mongers? pm.org? perl.org?
-
-
AUTHOR
AND
COPYRIGHT
-
-
DESCRIPTION
-
- How do
I do (anything)?
-
- How can
I use Perl interactively?
-
- Is there a Perl shell?
-
- How do
I debug my Perl programs?
-
- How do
I profile my Perl programs?
-
- How do
I cross-reference my Perl programs?
-
- Is there a pretty-printer (formatter) for Perl?
-
- Is there a ctags for Perl?
-
- Is there an
IDE or Windows Perl Editor?
-
- Where can
I get Perl macros for vi?
-
- Where can
I get perl-mode for emacs?
-
- How can
I use curses with Perl?
-
- How can
I use
X or Tk with Perl?
-
- How can
I generate simple menus without using
CGI or Tk?
-
- What is undump?
-
- How can
I make my Perl program run faster?
-
- How can
I make my Perl program take less memory?
-
- Is it unsafe to return a pointer to local data?
-
- How can
I free an array or hash so my program shrinks?
-
- How can
I make my
CGI script more efficient?
-
- How can
I hide the source for my Perl program?
-
- How can
I compile my Perl program into byte code or
C?
-
- How can
I compile Perl into Java?
-
- How can
I get
#!perl to work on
[MS-DOS,NT,...]?
-
- Can
I write useful Perl programs on the command line?
-
- Why don't Perl one-liners work on my DOS/Mac/VMS system?
-
- Where can
I learn about
CGI or Web programming in Perl?
-
- Where can
I learn about object-oriented Perl programming?
-
- Where can
I learn about linking
C with Perl? [h2xs, xsubpp]
-
- I've read perlembed, perlguts, etc., but
I can't embed perl in
my
C program, what am
I doing wrong?
-
- When
I tried to run my script,
I got this message. What does it
mean?
-
- What's MakeMaker?
-
-
AUTHOR
AND
COPYRIGHT
-
-
DESCRIPTION
-
- Data: Numbers
-
- Why am
I getting long decimals (eg, 19.9499999999999) instead of the
numbers
I should be getting (eg, 19.95)?
-
- Why isn't my octal data interpreted correctly?
-
- Does Perl have a
round() function? What about ceil() and floor()?
Trig functions?
-
- How do
I convert bits into ints?
-
- Why doesn't & work the way
I want it to?
-
- How do
I multiply matrices?
-
- How do
I perform an operation on a series of integers?
-
- How can
I output Roman numerals?
-
- Why aren't my random numbers random?
-
- Data: Dates
-
- How do
I find the week-of-the-year/day-of-the-year?
-
- How do
I find the current century or millennium?
-
- How can
I compare two dates and find the difference?
-
- How can
I take a string and turn it into epoch seconds?
-
- How can
I find the Julian Day?
-
- How do
I find yesterday's date?
-
- Does Perl have a Year 2000 problem? Is Perl
Y2K compliant?
-
- Data: Strings
-
- How do
I validate input?
-
- How do
I unescape a string?
-
- How do
I remove consecutive pairs of characters?
-
- How do
I expand function calls in a string?
-
- How do
I find matching/nesting anything?
-
- How do
I reverse a string?
-
- How do
I expand tabs in a string?
-
- How do
I reformat a paragraph?
-
- How can
I access/change the first
N letters of a string?
-
- How do
I change the Nth occurrence of something?
-
- How can
I count the number of occurrences of a substring within a
string?
-
- How do
I capitalize all the words on one line?
-
- How can
I split a [character] delimited string except when inside
[character]? (Comma-separated files)
-
- How do
I strip blank space from the beginning/end of a string?
-
- How do
I pad a string with blanks or pad a number with zeroes?
-
- How do
I extract selected columns from a string?
-
- How do
I find the soundex value of a string?
-
- How can
I expand variables in text strings?
-
- What's wrong with always quoting ``$vars''?
-
- Why don't my
<<HERE documents work?
-
1. There must be no space after the << part, 2. There (probably) should be
a semicolon at the end, 3. You can't (easily) have any space in front of
the tag
- Data: Arrays
-
- What is the difference between a list and an array?
-
- What is the difference between $array[1] and @array[1]?
-
- How can
I remove duplicate elements from a list or array?
-
a) If @in is sorted, and you want @out to be sorted:(this assumes all true
values in the array), b) If you don't know whether @in is sorted:, c) Like
(b), but @in contains only small integers:, d)
A way to do (b) without any
loops or greps:, e) Like (d), but @in contains only small positive
integers:
- How can
I tell whether a list or array contains a certain element?
-
- How do
I compute the difference of two arrays? How do
I compute the
intersection of two arrays?
-
- How do
I test whether two arrays or hashes are equal?
-
- How do
I find the first array element for which a condition is true?
-
- How do
I handle linked lists?
-
- How do
I handle circular lists?
-
- How do
I shuffle an array randomly?
-
- How do
I process/modify each element of an array?
-
- How do
I select a random element from an array?
-
- How do
I permute
N elements of a list?
-
- How do
I sort an array by (anything)?
-
- How do
I manipulate arrays of bits?
-
- Why does
defined() return true on empty arrays and hashes?
-
- Data: Hashes (Associative Arrays)
-
- How do
I process an entire hash?
-
- What happens if
I add or remove keys from a hash while iterating over
it?
-
- How do
I look up a hash element by value?
-
- How can
I know how many entries are in a hash?
-
- How do
I sort a hash (optionally by value instead of key)?
-
- How can
I always keep my hash sorted?
-
- What's the difference between ``delete'' and ``undef'' with hashes?
-
- Why don't my tied hashes make the defined/exists distinction?
-
- How do
I reset an
each() operation part-way through?
-
- How can
I get the unique keys from two hashes?
-
- How can
I store a multidimensional array in a
DBM file?
-
- How can
I make my hash remember the order
I put elements into it?
-
- Why does passing a subroutine an undefined element in a hash create
it?
-
- How can
I make the Perl equivalent of a
C structure/C++ class/hash or
array of hashes or arrays?
-
- How can
I use a reference as a hash key?
-
- Data: Misc
-
- How do
I handle binary data correctly?
-
- How do
I determine whether a scalar is a number/whole/integer/float?
-
- How do
I keep persistent data across program calls?
-
- How do
I print out or copy a recursive data structure?
-
- How do
I define methods for every class/object?
-
- How do
I verify a credit card checksum?
-
- How do
I pack arrays of doubles or floats for
XS code?
-
-
AUTHOR
AND
COPYRIGHT
-
-
DESCRIPTION
-
- How do
I flush/unbuffer an output filehandle? Why must
I do this?
-
- How do
I change one line in a file/delete a line in a file/insert a
line in the middle of a file/append to the beginning of a file?
-
- How do
I count the number of lines in a file?
-
- How do
I make a temporary file name?
-
- How can
I manipulate fixed-record-length files?
-
- How can
I make a filehandle local to a subroutine? How do
I pass
filehandles between subroutines? How do
I make an array of filehandles?
-
- How can
I use a filehandle indirectly?
-
- How can
I set up a footer format to be used with write()?
-
- How can
I
write() into a string?
-
- How can
I output my numbers with commas added?
-
- How can
I translate tildes (~) in a filename?
-
- How come when
I open a file read-write it wipes it out?
-
- Why do
I sometimes get an ``Argument list too long'' when
I use <*>?
-
- Is there a leak/bug in glob()?
-
- How can
I open a file with a leading ``>'' or trailing blanks?
-
- How can
I reliably rename a file?
-
- How can
I lock a file?
-
- Why can't
I just open(FH, ``>file.lock'')?
-
-
I still don't get locking.
I just want to increment the number in
the file. How can
I do this?
-
- How do
I randomly update a binary file?
-
- How do
I get a file's timestamp in perl?
-
- How do
I set a file's timestamp in perl?
-
- How do
I print to more than one file at once?
-
- How can
I read in an entire file all at once?
-
- How can
I read in a file by paragraphs?
-
- How can
I read a single character from a file? From the keyboard?
-
- How can
I tell whether there's a character waiting on a filehandle?
-
- How do
I do a
tail -f in perl?
-
- How do
I
dup() a filehandle in Perl?
-
- How do
I close a file descriptor by number?
-
- Why can't
I use ``C:\temp\foo'' in
DOS paths? What doesn't
`C:\temp\foo.exe` work?
-
- Why doesn't
glob(``*.*'') get all the files?
-
- Why does Perl let me delete read-only files? Why does
-i clobber
protected files? Isn't this a bug in Perl?
-
- How do
I select a random line from a file?
-
- Why do
I get weird spaces when
I print an array of lines?
-
-
AUTHOR
AND
COPYRIGHT
-
-
DESCRIPTION
-
- How can
I hope to use regular expressions without creating illegible
and unmaintainable code?
-
Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
- I'm having trouble matching over more than one line. What's wrong?
-
- How can
I pull out lines between two patterns that are themselves on
different lines?
-
-
I put a regular expression into $/ but it didn't work. What's wrong?
-
- How do
I substitute case insensitively on the
LHS, but preserving
case on the
RHS?
-
- How can
I make
\w match national character sets?
-
- How can
I match a locale-smart version of
/[a-zA-Z]/?
-
- How can
I quote a variable to use in a regex?
-
- What is
/o really for?
-
- How do
I use a regular expression to strip
C style comments from a
file?
-
- Can
I use Perl regular expressions to match balanced text?
-
- What does it mean that regexes are greedy? How can
I get around it?
-
- How do
I process each word on each line?
-
- How can
I print out a word-frequency or line-frequency summary?
-
- How can
I do approximate matching?
-
- How do
I efficiently match many regular expressions at once?
-
- Why don't word-boundary searches with
\b work for me?
-
- Why does using $&, $`, or $' slow my program down?
-
- What good is
\G in a regular expression?
-
- Are Perl regexes DFAs or NFAs? Are they
POSIX compliant?
-
- What's wrong with using grep or map in a void context?
-
- How can
I match strings with multibyte characters?
-
- How do
I match a pattern that is supplied by the user?
-
-
AUTHOR
AND
COPYRIGHT
-
-
DESCRIPTION
-
- Can
I get a BNF/yacc/RE for the Perl language?
-
- What are all these $@%&* punctuation signs, and how do
I know when to
use them?
-
- Do
I always/never have to quote my strings or use semicolons and
commas?
-
- How do
I skip some return values?
-
- How do
I temporarily block warnings?
-
- What's an extension?
-
- Why do Perl operators have different precedence than
C operators?
-
- How do
I declare/create a structure?
-
- How do
I create a module?
-
- How do
I create a class?
-
- How can
I tell if a variable is tainted?
-
- What's a closure?
-
- What is variable suicide and how can
I prevent it?
-
- How can
I pass/return a {Function, FileHandle, Array, Hash, Method,
Regex}?
-
Passing Variables and Functions, Passing Filehandles, Passing Regexes,
Passing Methods
- How do
I create a static variable?
-
- What's the difference between dynamic and lexical (static) scoping?
Between
local() and my()?
-
- How can
I access a dynamic variable while a similarly named lexical
is in scope?
-
- What's the difference between deep and shallow binding?
-
- Why doesn't ``my($foo) =
<FILE>;'' work right?
-
- How do
I redefine a builtin function, operator, or method?
-
- What's the difference between calling a function as &foo and foo()?
-
- How do
I create a switch or case statement?
-
- How can
I catch accesses to undefined variables/functions/methods?
-
- Why can't a method included in this same file be found?
-
- How can
I find out my current package?
-
- How can
I comment out a large block of perl code?
-
- How do
I clear a package?
-
- How can
I use a variable as a variable name?
-
-
AUTHOR
AND
COPYRIGHT
-
-
DESCRIPTION
-
- How do
I find out which operating system I'm running under?
-
- How come
exec() doesn't return?
-
- How do
I do fancy stuff with the keyboard/screen/mouse?
-
Keyboard, Screen, Mouse
- How do
I print something out in color?
-
- How do
I read just one key without waiting for a return key?
-
- How do
I check whether input is ready on the keyboard?
-
- How do
I clear the screen?
-
- How do
I get the screen size?
-
- How do
I ask the user for a password?
-
- How do
I read and write the serial port?
-
lockfiles, open mode, end of line, flushing output, non-blocking input
- How do
I decode encrypted password files?
-
- How do
I start a process in the background?
-
STDIN,
STDOUT, and
STDERR are shared, Signals, Zombies
- How do
I trap control characters/signals?
-
- How do
I modify the shadow password file on a Unix system?
-
- How do
I set the time and date?
-
- How can
I
sleep() or alarm() for under a second?
-
- How can
I measure time under a second?
-
- How can
I do an
atexit() or setjmp()/longjmp()? (Exception handling)
-
- Why doesn't my sockets program work under System
V (Solaris)? What
does the error message ``Protocol not supported'' mean?
-
- How can
I call my system's unique
C functions from Perl?
-
- Where do
I get the include files to do
ioctl() or syscall()?
-
- Why do setuid perl scripts complain about kernel problems?
-
- How can
I open a pipe both to and from a command?
-
- Why can't
I get the output of a command with system()?
-
- How can
I capture
STDERR from an external command?
-
- Why doesn't
open() return an error when a pipe open fails?
-
- What's wrong with using backticks in a void context?
-
- How can
I call backticks without shell processing?
-
- Why can't my script read from
STDIN after
I gave it
EOF
(^D on Unix,
^Z on
MS-DOS)?
-
- How can
I convert my shell script to perl?
-
- Can
I use perl to run a telnet or ftp session?
-
- How can
I write expect in Perl?
-
- Is there a way to hide perl's command line from programs such as
``ps''?
-
-
I {changed directory, modified my environment} in a perl script. How
come the change disappeared when
I exited the script? How do
I get my
changes to be visible?
-
Unix
- How do
I close a process's filehandle without waiting for it to
complete?
-
- How do
I fork a daemon process?
-
- How do
I make my program run with sh and csh?
-
- How do
I find out if I'm running interactively or not?
-
- How do
I timeout a slow event?
-
- How do
I set
CPU limits?
-
- How do
I avoid zombies on a Unix system?
-
- How do
I use an
SQL database?
-
- How do
I make a
system() exit on control-C?
-
- How do
I open a file without blocking?
-
- How do
I install a module from
CPAN?
-
- What's the difference between require and use?
-
- How do
I keep my own module/library directory?
-
- How do
I add the directory my program lives in to the module/library
search path?
-
- How do
I add a directory to my include path at runtime?
-
- What is socket.ph and where do
I get it?
-
-
AUTHOR
AND
COPYRIGHT
-
-
DESCRIPTION
-
- My
CGI script runs from the command line but not the browser. (500
Server Error)
-
- How can
I get better error messages from a
CGI program?
-
- How do
I remove
HTML from a string?
-
- How do
I extract URLs?
-
- How do
I download a file from the user's machine? How do
I open a
file on another machine?
-
- How do
I make a pop-up menu in
HTML?
-
- How do
I fetch an
HTML file?
-
- How do
I automate an
HTML form submission?
-
- How do
I decode or create those %-encodings on the web?
-
- How do
I redirect to another page?
-
- How do
I put a password on my web pages?
-
- How do
I edit my .htpasswd and .htgroup files with Perl?
-
- How do
I make sure users can't enter values into a form that cause my
CGI script to do bad things?
-
- How do
I parse a mail header?
-
- How do
I decode a
CGI form?
-
- How do
I check a valid mail address?
-
- How do
I decode a
MIME/BASE64 string?
-
- How do
I return the user's mail address?
-
- How do
I send mail?
-
- How do
I read mail?
-
- How do
I find out my hostname/domainname/IP address?
-
- How do
I fetch a news article or the active newsgroups?
-
- How do
I fetch/put an
FTP file?
-
- How can
I do
RPC in Perl?
-
-
AUTHOR
AND
COPYRIGHT
-
-
DESCRIPTION
-
- Core Enhancements
-
- Interpreter cloning, threads, and concurrency
-
- Lexically scoped warning categories
-
- Unicode and
UTF-8 support
-
- Support for interpolating named characters
-
- ``our'' declarations
-
- Support for strings represented as a vector of ordinals
-
- Improved Perl version numbering system
-
- New syntax for declaring subroutine attributes
-
- File and directory handles can be autovivified
-
open() with more than two arguments
-
- -bit support
- Large file support
-
- Long doubles
-
- ``more bits''
-
- Enhanced support for
sort() subroutines
-
sort $coderef @foo allowed
-
- File globbing implemented internally
-
Support for
CHECK blocks
-
POSIX character class syntax [: :] supported
-
Better pseudo-random number generator
- Improved
qw// operator
-
Better worst-case behavior of hashes
pack() format
'Z' supported
-
pack() format modifier '!' supported
-
pack() and unpack() support counted strings
-
- Comments in
pack() templates
-
- Weak references
-
- Binary numbers supported
-
- Lvalue subroutines
-
- Some arrows may be omitted in calls through references
-
- Boolean assignment operators are legal lvalues
-
exists() is supported on subroutine names
-
exists() and delete() are supported on array elements
-
- Pseudo-hashes work better
-
- Automatic flushing of output buffers
-
- Better diagnostics on meaningless filehandle operations
-
- Where possible, buffered data discarded from duped input filehandle
-
eof() has the same old magic as <>
-
binmode() can be used to set :crlf and :raw modes
-
-T filetest recognizes
UTF-8 encoded files as ``text''
-
- system(), backticks and pipe open now reflect
exec() failure
-
- Improved diagnostics
-
- Diagnostics follow
STDERR
-
More consistent close-on-exec behavior
syswrite() ease-of-use
-
- Better syntax checks on parenthesized unary operators
-
- Bit operators support full native integer width
-
- Improved security features
-
More functional bareword prototype (*)
require and do may be overridden
-
-
$^X variables may now have names longer than one character
-
- New variable
$^C reflects
-c switch
-
- New variable
$^V contains Perl version as a string
-
- Optional
Y2K warnings
-
- Modules and Pragmata
-
- Modules
-
attributes,
B, Benchmark, ByteLoader, constant, charnames, Data::Dumper,
DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English,
Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec,
File::Spec::Functions, Getopt::Long,
IO,
JPL, lib, Math::BigInt,
Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker,
podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage,
pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname,
Term::ANSIColor, Time::Local, Win32, XSLoader,
DBM Filters
- Pragmata
-
- Utility Changes
-
- dprofpp
-
- find2perl
-
- h2xs
-
- perlcc
-
- perldoc
-
- The Perl Debugger
-
- Improved Documentation
-
perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod,
perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod,
perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod,
perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod
- Performance enhancements
-
- Simple
sort() using { $a <=> $b } and the like are optimized
-
- Optimized assignments to lexical variables
-
- Faster subroutine calls
-
delete(), each(),
values() and hash iteration are faster
- Installation and Configuration Improvements
-
- -Dusethreads means something different
-
- New Configure flags
-
- Threadedness and 64-bitness now more daring
-
- Long Doubles
-
- -Dusemorebits
-
- -Duselargefiles
-
- installusrbinperl
-
-
SOCKS support
-
-A flag
-
- Enhanced Installation Directories
-
- Platform specific changes
-
- Supported platforms
-
-
DOS
-
-
OS3