Perl - Introduction
Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages. Perl was developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions. Raku, which began as a redesign of Perl 5 in 2000, eventually evolved into a separate language. Both languages continue to be developed independently by different development teams and liberally borrow ideas from each other. It runs on a variety of platforms, such as Windows, Mac OS, and the various versions of UNIX. Some important features of Perl are given below:
Easily extendible – Perl is extendible programming language. There are over 25,000 open source modules available from the Comprehensive Perl Archive Network (CPAN).
Text manipulation – Perl includes powerful tools for processing text that make it ideal for working with HTML, XML, and all other mark-up and natural languages.
Object-oriented, procedural and functional – Perl Supports object-oriented, procedural and functional programming.
Database integration – Perl's database integration interface (DBI) supports third-party databases including Oracle, Sybase, Postgres, MySQL and many others.
C/C++ library interface – Perl interfaces with external C/C++ libraries through XS or SWIG.
Embeddable – The Perl interpreter can be embedded into other systems such as web servers and database servers. Perl is also considered as an ideal web programming language due to its text manipulation capabilities and rapid development cycle.
Web modules – CPAN offers thousands of modules, so almost any task you need to accomplish will be made easier, from URL or image manipulation, to Amazon EC2 APIs and much more.
Open Source – Perl is Open Source software, licensed under its Artistic License, or the GNU General Public License (GPL).
Embed into Apache – Perl can be embedded into web servers to speed up processing by as much as 2000%, mod_perl allows the Apache web server to embed a Perl interpreter.