Powerful, stable, mature, portable
Perl is a highly capable, feature-rich programming language with over 30 years of development. Perl runs on over 100 platforms from portables to mainframes and is suitable for both rapid prototyping and large scale development projects.
“Perl” is a family of languages, “Raku” (formerly known as “Perl 6”) is part of the family, but it is a separate language which has its own development team. Its existence has no significant impact on the continuing development of “Perl”.
Used for mission critical projects in the public and private sectors.
Object-oriented, procedural and functional
Supports object-oriented, procedural and functional programming.
There are over 25,000 open source modules available from the Comprehensive Perl Archive Network (CPAN).
Supports Unicode version 6 (from Perl 5.14).
C/C++ library interface
Perl interfaces with external C/C++ libraries through XS or SWIG.
The Perl interpreter can be embedded into other systems such as web servers and database servers.
Perl is Open Source software, licensed under its Artistic License, or the GNU General Public License (GPL).
Perl and the Web
Ideal web programming language
Perl is an ideal web programming language due to its text manipulation capabilities and rapid development cycle.
There are many web frameworks written in Perl, a leading one is Catalyst.
Perl’s DBI package makes web-database integration easy. DBIx::Class – is available as an Object Relational Mapper.
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.
Duct-tape of the internet, and more…
Perl has long been known as “the duct-tape of the Internet”, however many large web based applications are also written solely in Perl.
Perl can handle encrypted Web data, including e-commerce transactions.
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.