Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl is a term stands for "Practical Extraction and Reporting Language" even though there is no acronym for Perl. It was introduced by Larry Wall in 1987. Perl language was specially designed for text editing. But now, it is widely used for a variety of purposes including Linux system administration, network programming, web development, etc.
The power of Perl scripting language can be implemented in many fields. The most popular use of Perl is in Web development., Perl is also used to automate many tasks in the Web servers, and other administration jobs, it can automatically generate emails and clean up systems. Perl is still used for its original purpose i.e. extracting data and generating reports. It can produce reports on resource use and check for security issues in a network. Due to this reason, Perl has become a popular language used in web development, networking and bioinformatics too. Apart from all this perl can also be used for CGI programming.
Perl is also known for implementation of OOP(object oriented programming) practices and supports all forms of inheritance (simple, multiple & diamond), polymorphism and encapsulation. Perl is flexible enough to support Procedural as well as OOP practices simultaneously. Perl also has extra modules which permit you to write or use/reuse code written in Python, PHP, PDL, TCL, Octave, Java, C, C++, Basic, Ruby and Lua in your Perl script.
Example of Hello World.
print "Hello World.\n";
Example to add two numbers.
$x = 60;
$y = 80;
$sum = $x + $y;
Download and installation:
First, download the Active Perl from this link. Follow these steps to install ActivePerl on Windows system.
See the below steps to install Perl on Windows.
Step 1: Once you download the installer and start the installation you will see the below window, click on next to proceed.
Step 2: Accept Licensing agreement to proceed the installation.
Step 3: Below are different packages that will be installed. By default, all will be selected. The only thing different is PPM (Perl Package Manager). This is the utility provided by Active Perl to install external Perl modules or libraries in your system. Click on Next to proceed.
Step 4: These are different types of Perl extensions that can be used for Perl. Mostly we will be using .Pl, .Plx and .Pm for Perl. Perl modules basically use .Pm as their file extension to refer to a library file. Select all the options and click on the Next button.
Step 5: Click on Install button to proceed with the installation.
Step 6: Once installed, execute the command 'Perl –v' to check whether Perl is successfully installed in your system.
Perl used to be the most popular web programming language due to its text manipulation capabilities and rapid development cycle.
Perl is widely known as "the duct-tape of the Internet".
Perl can handle encrypted Web data, including e-commerce transactions.
Perl can be embedded into web servers to speed up processing by as much as 2000%.
Perl's mod_perl allows the Apache web server to embed a Perl interpreter.
Perl's DBI package makes web-database integration easy.
Perl takes the best features from other languages, such as C, awk, sed, sh, and BASIC, among others.
Perls database integration interface DBI supports third-party databases including Oracle, Sybase, Postgres, MySQL and others.
Perl works with HTML, XML, and other mark-up languages.
Perl supports Unicode, Procedural and object - Oriented Programming
Perl interfaces with external C/C++ libraries through XS or SWIG.
The Perl interpreter can be embedded into other systems.
Compared to other Programming languages Perl is most powerful for text handling and Parsing
This is an interpreted language with fast execution time as there is no need to compile a Perl script
Simple and easy to program and understand.
It is object oriented.
CPAN library eases Perl development (we will learn more about this later in the subject).
Used in Web development for mostly Payment Gateways.
Used in Automation and to test most of the Network and Storage related stuff.
There is minimal GUI support as compared to other Programming languages.
You need to refer to complex library modules which are not so easy to understand (Don't be scared once you know how to do the things everything will be easy).
Understanding complex Patterns requires experience.
Source: Guru99, Wikipedia
The Tech Platform