What is it?
Perl (Practical Extraction Report Language) is widely used to write web server programs for such tasks as automatically updating user accounts and newsgroup postings, processing removal requests, synchronising databases and generating reports.
It is often used as part of the Lamp open source web development platform. The first three letters of the acronym Lamp stand for Linux, Apache and MySQL. The “P” can be either Perl, Python or PHP. Perl is the oldest of these, and until recently the most widely used.
It appears to have been overtaken by PHP, although open source statistics are notoriously hard to gather. Perl has powerful backing from the likes of IBM, Sun, Novell and Red Hat – all of which also support PHP – and Perl code runs at tens of thousands of installations whose users may not know that they depend on it.
Like other Lamp scripting languages, Perl has an embarrassment of free support in the form of communities, code sources and tutorials. It is not hard to learn if you have a programming background, and with time and commitment, you can add it to your skills portfolio without spending money.
Where did it originate?
Perl was originally conceived as an interpreted language for producing reports from text files. It was created by Larry Wall, a linguist by training, and released in 1987. Wall has described it as “the first postmodern computer language”, and openly admits to having borrowed from C, C++, Fortran, Cobol, PL/I, Basic-Plus, Lisp, Ada and even Python.
The language has been very stable. Perl5 replaced Perl4 in 1994 and it has taken more than 10 years for Perl 6 to evolve.
What’s it for?
The Perl community call it “the duct tape of the internet”, because it is widely used to bring together many types of software and systems. But, as with PHP and Python, the description “scripting language”, suggesting quick scraps of code, no longer fits, since all are used for substantial applications. Perl supports both procedural and objected-oriented programming.
What makes it special?
Perl is free to learn and use, it is widely supported by the professional services sector as well as its own community, and the skills do not go out of date quickly. Unlike some other languages, developers do not have to prove themselves by paying to renew their certification every year.
How difficult is it to master?
There are crash courses that claim to be able to get a newcomer coding with Perl in one evening. Learning is progressive: developers can pick up and use a little, or devote a lot of time to becoming seriously proficient. A background in C and Unix is an advantage, but any programming experience will do.
Where is it used?
From web boutiques to large IT companies, high street banks and City firms. There are millions of user organisations.
What systems does it run on?
Unix, Linux, Windows Macintosh and other current and legacy systems. Perl is best known as a partner for MySQL, it is also used with Postgres, Oracle, DB2, Sybase and many others.
What’s coming up?
Perl6, a major rewrite which promises to eliminate much of the complexity caused by the large volume of input into Perl5.
Looking for Web Developers? Get free quotes from up to 6 leading Web Developers.