Package perl

Practical Extraction and Report Language

http://www.perl.org/

Perl is a high-level programming language with roots in C, sed, awk and shell
scripting.  Perl is good at handling processes and files, and is especially
good at handling text.  Perl's hallmarks are practicality and efficiency.
While it is used to do a lot of different things, Perl's most common
applications are system administration utilities and web programming.

Install this package if you want to program in Perl or enable your system to
handle Perl scripts with /usr/bin/perl interpreter.

If your script requires some Perl modules, you can install them with
"perl(MODULE)" where "MODULE" is a name of required module. E.g. install
"perl(Test::More)" to make Test::More Perl module available.

If you need all the Perl modules that come with upstream Perl sources, so
called core modules, install perl-core package.

If you only need perl run-time as a shared library, i.e. Perl interpreter
embedded into another application, the only essential package is perl-libs.

Perl header files can be found in perl-devel package.

Perl utils like "splain" or "perlbug" can be found in perl-utils package.
General Commands (Section 1)
perl
Perl officially stands for Practical Extraction and Report Language, except when it doesn't. Perl was originally a language optimized for scanning arbitrary...
perl5004delta
This document describes differences between the 5.003 release (as documented in Programming Perl, second edition--the Camel Book) and this one.
perl5005delta
This document describes differences between the 5.004 release and this one.
perl5100delta
This document describes the differences between the 5.8.8 release and the 5.10.0 release. Many of the bug fixes in 5.10.0 were already seen in the 5.8.X...
perl5101delta
This document describes differences between the 5.10.0 release and the 5.10.1 release. If you are upgrading from an earlier release such as 5.8.8, first read...
perl5120delta
This document describes differences between the 5.10.0 release and the 5.12.0 release. Many of the bug fixes in 5.12.0 are already included in the 5.10.1...
perl5121delta
This document describes differences between the 5.12.0 release and the 5.12.1 release. If you are upgrading from an earlier release such as 5.10.1, first read...
perl5122delta
This document describes differences between the 5.12.1 release and the 5.12.2 release. If you are upgrading from an earlier major version, such as 5.10.1, first...
perl5123delta
This document describes differences between the 5.12.2 release and the 5.12.3 release. If you are upgrading from an earlier release such as 5.12.1, first read...
perl5124delta
This document describes differences between the 5.12.3 release and the 5.12.4 release. If you are upgrading from an earlier release such as 5.12.2, first read...
perl5125delta
This document describes differences between the 5.12.4 release and the 5.12.5 release. If you are upgrading from an earlier release such as 5.12.3, first read...
perl5140delta
This document describes differences between the 5.12.0 release and the 5.14.0 release. If you are upgrading from an earlier release such as 5.10.0, first read...
perl5141delta
This document describes differences between the 5.14.0 release and the 5.14.1 release. If you are upgrading from an earlier release such as 5.12.0, first read...
perl5142delta
This document describes differences between the 5.14.1 release and the 5.14.2 release. If you are upgrading from an earlier release such as 5.14.0, first read...
perl5143delta
This document describes differences between the 5.14.2 release and the 5.14.3 release. If you are upgrading from an earlier release such as 5.12.0, first read...
perl5144delta
This document describes differences between the 5.14.3 release and the 5.14.4 release. If you are upgrading from an earlier release such as 5.12.0, first read...
perl5160delta
This document describes differences between the 5.14.0 release and the 5.16.0 release. If you are upgrading from an earlier release such as 5.12.0, first read...
perl5161delta
This document describes differences between the 5.16.0 release and the 5.16.1 release. If you are upgrading from an earlier release such as 5.14.0, first read...
perl5162delta
This document describes differences between the 5.16.1 release and the 5.16.2 release. If you are upgrading from an earlier release such as 5.16.0, first read...
perl5163delta
This document describes differences between the 5.16.2 release and the 5.16.3 release. If you are upgrading from an earlier release such as 5.16.1, first read...
perl5180delta
This document describes differences between the v5.16.0 release and the v5.18.0 release. If you are upgrading from an earlier release such as v5.14.0, first...
perl5181delta
This document describes differences between the 5.18.0 release and the 5.18.1 release. If you are upgrading from an earlier release such as 5.16.0, first read...
perl5182delta
This document describes differences between the 5.18.1 release and the 5.18.2 release. If you are upgrading from an earlier release such as 5.18.0, first read...
perl5184delta
This document describes differences between the 5.18.4 release and the 5.18.2 release. Please note: This document ignores perl 5.18.3, a broken release which...
perl5200delta
This document describes differences between the 5.18.0 release and the 5.20.0 release. If you are upgrading from an earlier release such as 5.16.0, first read...
perl5201delta
This document describes differences between the 5.20.0 release and the 5.20.1 release. If you are upgrading from an earlier release such as 5.18.0, first read...
perl5202delta
This document describes differences between the 5.20.1 release and the 5.20.2 release. If you are upgrading from an earlier release such as 5.20.0, first read...
perl5203delta
This document describes differences between the 5.20.2 release and the 5.20.3 release. If you are upgrading from an earlier release such as 5.20.1, first read...
perl5220delta
This document describes differences between the 5.20.0 release and the 5.22.0 release. If you are upgrading from an earlier release such as 5.18.0, first read...
perl5221delta
This document describes differences between the 5.22.0 release and the 5.22.1 release. If you are upgrading from an earlier release such as 5.20.0, first read...
perl5222delta
This document describes differences between the 5.22.1 release and the 5.22.2 release. If you are upgrading from an earlier release such as 5.22.0, first read...
perl5240delta
This document describes the differences between the 5.22.0 release and the 5.24.0 release.
perl561delta
This document describes differences between the 5.005 release and the 5.6.1 release.
perl56delta
This document describes differences between the 5.005 release and the 5.6.0 release.
perl581delta
This document describes differences between the 5.8.0 release and the 5.8.1 release. If you are upgrading from an earlier release such as 5.6.1, first read the...
perl582delta
This document describes differences between the 5.8.1 release and the 5.8.2 release. If you are upgrading from an earlier release such as 5.6.1, first read the...
perl583delta
This document describes differences between the 5.8.2 release and the 5.8.3 release. If you are upgrading from an earlier release such as 5.6.1, first read the...
perl584delta
This document describes differences between the 5.8.3 release and the 5.8.4 release.
perl585delta
This document describes differences between the 5.8.4 release and the 5.8.5 release.
perl586delta
This document describes differences between the 5.8.5 release and the 5.8.6 release.
perl587delta
This document describes differences between the 5.8.6 release and the 5.8.7 release.
perl588delta
This document describes differences between the 5.8.7 release and the 5.8.8 release.
perl589delta
This document describes differences between the 5.8.8 release and the 5.8.9 release.
perl58delta
This document describes differences between the 5.6.0 release and the 5.8.0 release. Many of the bug fixes in 5.8.0 were already seen in the 5.6.1 maintenance...
perlaix
This document describes various features of IBM's UNIX operating system AIX that will affect how Perl version 5 (hereafter just Perl) is compiled and/or...
perlamiga
Prerequisites for running Perl 5.22.1 under AmigaOS 4.1Starting Perl programs under AmigaOS 4.1 Perl may be run from the AmigaOS shell but for best results...
perlandroid
This document describes how to set up your host environment when attempting to build Perl for Android.
perlapi
This file contains the documentation of the perl public API generated by embed.pl, specifically a listing of functions, macros, flags, and variables that may be...
perlapio
Perl's source code, and extensions that want maximum portability, should use the above functions instead of those defined in ANSI C's stdio.h. The perl headers...
perlartistic
the Perl Artistic License
perlbook
There are many books on Perl and Perl-related. A few of these are good, some are OK, but many aren't worth your money. There is a list of these books, some with...
perlboot
For information on OO programming with Perl, please see perlootut and perlobj. (The above documents supersede the tutorial that was formerly here in perlboot.)
perlbot
For information on OO programming with Perl, please see perlootut and perlobj. (The above documents supersede the collection of tricks that was formerly here in...
perlbs2000
This is a ported perl for the POSIX subsystem in BS2000 VERSION OSD V3.1A or later. It may work on other versions, but we started porting and testing it with...
perlcall
The purpose of this document is to show you how to call Perl subroutines directly from C, i.e., how to write callbacks. Apart from discussing the C interface...
perlce
Warning Much of this document has become very out of date and needs updating, rewriting or deleting. The build process was overhauled during the 5.19...
perlcheat
This 'cheat sheet' is a handy reference, meant for beginning Perl programmers. Not everything is mentioned, but 195 features may already be overwhelming.The...
perlclib
One thing Perl porters should note is that perl doesn't tend to use that much of the C standard library internally; you'll see very little use of, for example...
perlcn
XXXX Perl XXX! X 5.8.0 XXX, Perl Xxxxxx Unicode (XXX) XX, XXXXXXXXXXXXXXXXXXX; CJK (XXX) XXXXXXXX. Unicode Xxxxxxx, XXXXXXXXXXXX: XXXX, XXXX, XXXXXXXX (XXX...
perlcommunity
This document aims to provide an overview of the vast perl community, which is far too large and diverse to provide a detailed listing. If any specific niche...
perlcygwin
This document will help you configure, make, test and install Perl on Cygwin. This document also describes features of Cygwin that will affect how Perl behaves...
perldata
Variable names Perl has three built-in data types: scalars, arrays of scalars, and associative arrays of scalars, known as "hashes". A scalar is a single string...
perldbmfilter
The four "filter_*" methods shown above are available in all the DBM modules that ship with Perl, namely DB_File, GDBM_File, NDBM_File, ODBM_File and SDBM_File...
perldebguts
This is not perldebug, which tells you how to use the debugger. This manpage describes low-level details concerning the debugger's internals, which range from...
perldebtut
A (very) lightweight introduction in the use of the perl debugger, and a pointer to existing, deeper sources of information on the subject of debugging perl...
perldebug
First of all, have you tried using "use strict;" and "use warnings;"? If you're new to the Perl debugger, you may prefer to read perldebtut, which is a tutorial...
perldiag
various Perl diagnostics
perldos
Before you start, you should glance through the README file found in the top-level directory where the Perl distribution was extracted. Make sure you read and...
perldsc
Perl lets us have complex data structures. You can write something like this and all of a sudden, you'd have an array with three dimensions!
perldtrace
DTrace is a framework for comprehensive system- and application-level tracing. Perl is a DTrace provider, meaning it exposes several probes for instrumentation...
perlebcdic
An exploration of some of the issues facing Perl programmers on Ebcdic based computers. Portions of this document that are still incomplete are marked with XXX...
perlembed
Preamble Do you want to:RoadmapCompiling your C program If you have trouble compiling the scripts in this documentation, you're not alone. The cardinal rule...
perlexperiment
This document lists the current and past experimental features in the perl core. Although all of these are documented with their appropriate topics, this...
perlfork
The fork() emulation is implemented at the level of the Perl interpreter. What this means in general is that running fork() will actually clone the running...
perlform
Perl has a mechanism to help you generate simple reports and charts. To facilitate this, Perl helps you code up your output page close to how it will look when...
perlfreebsd
This document describes various features of FreeBSD that will affect how Perl version 5 (hereafter just Perl) is compiled and/or runs.FreeBSD core dumps from...
perlfunc
The functions in this section can serve as terms in an expression. They fall into two major categories: list operators and named unary operators. These differ...
perlgit
This document provides details on using git to develop Perl. If you are just interested in working on a quick patch, see perlhack first. This document is...
perlgpl
the GNU General Public License, version 1
perlguts
This document attempts to describe how to use the Perl API, as well as to provide some info on the basic workings of the Perl core. It is far from complete and...
perlhack
This document explains how Perl development works. It includes details about the Perl 5 Porters email list, the Perl repository, the Perlbug bug tracker, patch...
perlhacktips
This document will help you learn the best way to go about hacking on the Perl core C code. It covers common problems, debugging, profiling, and more. If you...
perlhacktut
This document takes you through a simple patch example. If you haven't read perlhack yet, go do that first! You might also want to read through perlsource too...
perlhaiku
This file contains instructions how to build Perl for Haiku and lists known problems.
perlhist
This document aims to record the Perl source code releases.
perlhpux
This document describes various features of HP's Unix operating system (HP-UX) that will affect how Perl version 5 (hereafter just Perl) is compiled and/or...
perlhurd
If you want to use Perl on the Hurd, I recommend using the Debian GNU/Hurd distribution ( see http://www.debian.org/ ), even if an official, stable release has...
perlintern
This file is the autogenerated documentation of functions in the Perl interpreter that are documented using Perl's internal documentation format but are not...
perlinterp
This document provides an overview of how the Perl interpreter works at the level of C code, along with pointers to the relevant C source code files.
perlintro
This document is intended to give you a quick overview of the Perl programming language, along with pointers to further documentation. It is intended as a...
perliol
This document describes the behavior and implementation of the PerlIO abstraction described in perlapio when "USE_PERLIO" is defined.History and Background The...
perlipc
The basic IPC facilities of Perl are built out of the good old Unix signals, named pipes, pipe opens, the Berkeley socket routines, and SysV IPC calls. Each is...
perlirix
This document describes various features of Irix that will affect how Perl version 5 (hereafter just Perl) is compiled and/or runs.Building 32-bit Perl in Irix...
perljp
Perl XXXXXXXX! Perl 5.8.0 XXXUnicodeXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX CJK...
perlko
PerlX Xxx Xx Xx XXXXX! PerlX Xx 'Practical Extraction and Report Language'Xx Xxx Xxxx Xx Xx Xxx Xx Xxx 'Pathologically Eclectic Rubbish Lister'Xx Xxx Xxx. Xx...
perllexwarn
Perl v5.6.0 introduced lexical control over the handling of warnings by category. The "warnings" pragma generally replaces the command line flag -w...
perllinux
This document describes various features of Linux that will affect how Perl version 5 (hereafter just Perl) is compiled and/or runs.Experimental Support for Sun...
perllocale
In the beginning there was ASCII, the "American Standard Code for Information Interchange", which works quite well for Americans with their English alphabet and...
perllol
Declaration and Access of Arrays of Arrays The simplest two-level data structure to build in Perl is an array of arrays, sometimes casually called a list of...
perlmacos
The port of Perl to to Mac OS was officially removed as of Perl 5.12, though the last official production release of MacPerl corresponded to Perl 5.6. While...
perlmacosx
The latest Perl release (5.24.0 as of this writing) builds without changes under all versions of Mac OS X from 10.3 "Panther" onwards. In order to build your...
perlmod
Is this the document you were after? There are other documents which might contain the information that you're looking for:Packages Perl provides a mechanism...
perlmodinstall
You can think of a module as the fundamental unit of reusable Perl code; see perlmod for details. Whenever anyone creates a chunk of Perl code that they think...
perlmodlib
Many modules are included in the Perl distribution. These are described below, and all end in .pm. You may discover compiled library files (usually ending in...
perlmodstyle
This document attempts to describe the Perl Community's "best practice" for writing Perl modules. It extends the recommendations found in perlstyle , which...
perlmroapi
As of Perl 5.10.1 there is a new interface for plugging and using method resolution orders other than the default (linear depth first search). The C3 method...
perlnetware
This file gives instructions for building Perl 5.7 and above, and also Perl modules for NetWare. Before you start, you may want to read the README file found in...
perlnewmod
This document gives you some suggestions about how to go about writing Perl modules, preparing them for distribution, and making them available via CPAN. One of...
perlnumber
This document describes how Perl internally handles numeric values. Perl's operator overloading facility is completely ignored here. Operator overloading allows...
perlobj
This document provides a reference for Perl's object orientation features. If you're looking for an introduction to object-oriented programming in Perl, please...
perlootut
This document provides an introduction to object-oriented programming in Perl. It begins with a brief overview of the concepts behind object oriented design...
perlop
In Perl, the operator determines what operation is performed, independent of the type of the operands. For example "$x + $y" is always a numeric addition, and...
perlopenbsd
This document describes various features of OpenBSD that will affect how Perl version 5 (hereafter just Perl) is compiled and/or runs.OpenBSD core dumps from...
perlopentut
Whenever you do I/O on a file in Perl, you do so through what in Perl is called a filehandle. A filehandle is an internal name for an external file. It is the...
perlos2
Target The target is to make OS/2 one of the best supported platform for using/building/developing Perl and Perl applications, as well as make Perl the best...
perlos390
This is a fully ported Perl for OS/390 Version 2 Release 3, 5, 6, 7, 8, and 9. It may work on other versions or releases, but those are the ones we've tested it...
perlos400
This document describes various features of IBM's OS/400 operating system that will affect how Perl version 5 (hereafter just Perl) is compiled and/or runs. By...
perlpacktut
"pack" and "unpack" are two functions for transforming data according to a user-defined template, between the guarded way Perl stores values and some...
perlperf
This is an introduction to the use of performance and optimization techniques which can be used with particular reference to perl programs. While many perl...
perlplan9
These are a few notes describing features peculiar to Plan 9 Perl. As such, it is not intended to be a replacement for the rest of the Perl 5 documentation...
perlpod
Pod is a simple-to-use markup language used for writing documentation for Perl, Perl programs, and Perl modules. Translators are available for converting Pod to...
perlpodspec
This document is detailed notes on the Pod markup language. Most people will only have to read perlpod to know how to write in Pod, but this document may answer...
perlpolicy
This document is the master document which records all written policies about how the Perl 5 Porters collectively develop and maintain the Perl core.
perlport
Perl runs on numerous operating systems. While most of them share much in common, they also have their own unique features. This document is meant to help you...
perlpragma
A pragma is a module which influences some aspect of the compile time or run time behaviour of Perl, such as "strict" or "warnings". With Perl 5.10 you are no...
perlqnx
Perl version 5 on QNX
perlre
This page describes the syntax of regular expressions in Perl. If you haven't used regular expressions before, a quick-start introduction is available in...
perlreapi
As of Perl 5.9.5 there is a new interface for plugging and using regular expression engines other than the default one.
perlrebackslash
The top level documentation about Perl regular expressions is found in perlre. This document describes all backslash and escape sequences. After explaining the...
perlrecharclass
The top level documentation about Perl regular expressions is found in perlre. This manual page discusses the syntax and use of character classes in Perl...
perlref
Before release 5 of Perl it was difficult to represent complex data structures, because all references had to be symbolic--and even then it was difficult to...
perlreftut
One of the most important new features in Perl 5 was the capability to manage complicated data structures like multidimensional arrays and nested hashes. To...
perlreguts
This document is an attempt to shine some light on the guts of the regex engine and how it works. The regex engine represents a significant chunk of the perl...
perlrepository
Perl's source code is stored in a Git repository. See perlhack for an explanation of Perl development, including the Super Quick Patch Guide for making and...
perlrequick
This page covers the very basics of understanding, creating and using regular expressions ('regexes') in Perl.
perlreref
This is a quick reference to Perl's regular expressions. For full information see perlre and perlop, as well as the "See Also" section in this...
perlretut
This page provides a basic tutorial on understanding, creating and using regular expressions in Perl. It serves as a complement to the reference page on regular...
perlriscos
This document gives instructions for building Perl for RISC OS. It is complicated by the need to cross compile. There is a binary version of perl available from...
perlrun
The normal way to run a Perl program is by making it directly executable, or else by passing the name of the source file as an argument on the command line. (An...
perlsec
Perl is designed to make it easy to program securely even when running with extra privileges, like setuid or setgid programs. Unlike most command line shells...
perlsolaris
This document describes various features of Sun's Solaris operating system that will affect how Perl version 5 (hereafter just perl) is compiled and/or runs...
perlsource
This document describes the layout of the Perl source tree. If you're hacking on the Perl core, this will help you find what you're looking for.
perlstyle
Each programmer will, of course, have his or her own preferences in regards to formatting, but there are some general guidelines that will make your programs...
perlsub
Like many languages, Perl provides for user-defined subroutines. These may be located anywhere in the main program, loaded in from other files via the "do"...
perlsymbian
This document describes various features of the Symbian operating system that will affect how Perl version 5 (hereafter just Perl) is compiled and/or runs...
perlsyn
A Perl program consists of a sequence of declarations and statements which run from the top to the bottom. Loops, subroutines, and other control structures...
perlsynology
Synology manufactures a vast number of Network Attached Storage (NAS) devices that are very popular in large organisations as well as small businesses and...
perlthrtut
This tutorial describes the use of Perl interpreter threads (sometimes referred to as ithreads). In this model, each thread runs in its own Perl interpreter...
perltie
Prior to release 5.0 of Perl, a programmer could use dbmopen() to connect an on-disk database in the standard Unix dbm(3x) format magically to a %HASH in their...
perltoc
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...
perltodo
The Perl 5 to-do list is maintained in the git repository, and can be viewed at <http://perl5.git.perl.org/perl.git/blob…> (The to-do list used to be here in...
perltooc
For information on OO programming with Perl, please see perlootut and perlobj. (The above documents supersede the tutorial that was formerly here in perltooc.)
perltoot
For information on OO programming with Perl, please see perlootut and perlobj. (The above documents supersede the tutorial that was formerly here in perltoot.)
perltrap
The biggest trap of all is forgetting to "use warnings" or use the -w switch; see warnings and perlrun. The second biggest trap is not making your entire...
perltru64
This document describes various features of HP's (formerly Compaq's, formerly Digital's) Unix operating system (Tru64) that will affect how Perl version 5...
perltw
XXXX Perl XXX! X 5.8.0 XXX, Perl Xxxxxx Unicode (XXX) XX, XXXXXXXXXXXXXXXXXXX; CJK (XXX) XXXXXXXX. Unicode Xxxxxxx, XXXXXXXXXXXX: XXXX, XXXX, XXXXXXXX (XXX...
perlunicode
If you haven't already, before reading this document, you should become familiar with both perlunitut and perluniintro. Unicode aims to UNI-fy the en-CODE-ings...
perlunicook
This manpage contains short recipes demonstrating how to handle common Unicode operations in Perl, plus one complete program at the end. Any undeclared...
perlunifaq
This is a list of questions and answers about Unicode in Perl, intended to be read after perlunitut.perlunitut isn't really a Unicode tutorial, is it? No, and...
perluniintro
This document gives a general idea of Unicode and how to use Unicode in Perl. See "Further Resources" for references to more in-depth treatments of...
perlunitut
The days of just flinging strings around are over. It's well established that modern programs need to be capable of communicating funny accented letters, and...
perlvar
The Syntax of Variable Names Variable names in Perl can have several formats. Usually, they must begin with a letter or underscore, in which case they can be...
perlvms
Gathered below are notes describing details of Perl 5's behavior on VMS. They are a supplement to the regular Perl 5 documentation, so we have focussed on the...
perlvos
This file contains notes for building perl on the Stratus OpenVOS operating system. Perl is a scripting or macro language that is popular on many systems. See...
perlwin32
Before you start, you should glance through the README file found in the top-level directory to which the Perl distribution was extracted. Make sure you read...