What is it?
Shipped with
HP-UX, supported by
AIX and included by Sun in its
Solaris-based alternative to the
Linux
Lamp stack, Perl is a
scripting language favoured by systems administrators as a "glue"
language. From the mid-1990s, Perl was also the first choice for
developing
CGI
(Common Gateway Interface) scripts, and remains popular with
web and network developers.
With its roots in
C and shell
programming, Perl supports procedural, object-oriented and
functional programming, in line with one of its key tenets:
"there's more than one way to do it".
Originally intended for text manipulation as well as rapid
application development, Perl was developed at a time when hardware
costs were coming down and programmer costs rising, and is designed
to make the best use of developer's time. As a result, it is
practical rather than pretty, and not for those who like their code
elegant. As the standard textbook,
Programming
Perl, has it: "Perl is a language for getting your job done".
It's easy to learn, however, with extensive support available from
the open-source community.
Perl vies with
PHP and
Python to represent the P in the LAMP
(Linux,
Apache,
MySQL..." stack
Where did it originate?
Perl's creator Larry
Wall began work on the language in 1987 while working at
Unisys. In addition
to C, he took bits and pieces from
Fortran,
Lisp,
Ada
and and other languages. Perl 5, the current version, was released
in 1994, introducing features like modularity for code reuse.
What's it for?
According to the
HP-UX Perl download site, "Perl's process, file, and text
manipulation facilities make it particularly well-suited for tasks
involving quick prototyping, system utilities, software tools,
system management tasks, database access, graphical programming,
networking, and world wide web programming. These strengths make it
especially popular with system administrators and CGI script
authors." HP has optimised Perl for HP-UX on both PA Risc and
Itanium processors, and delivers it on its Foundation Operating
Environment media. The database integration interface supports DB2
and Oracle as well as Postgres and MySQL.
What makes it special?
Hundreds of freely downloadable code modules are available from
the Comprehensive Perl Archive Network,
CPAN.
How difficult is it to master?
Experienced C programmers and Unix systems administrators can
become productive with Perl almost at once, and improve their
skills as they go along. Beginners can also pick it up quickly,
although the heady freedom Perl offers is probably best enjoyed by
those who have already learned coding disciplines from another
language.
What systems does it run on?
Unix and Linux, Macintosh and Windows, legacy operating systems
like VMS.
What's coming up?
Perl 6 - perhaps. Perl 6 will be a radical revision, including
borrowings from more recent languages such as
Ruby and
Python, and is not intended to be backward-compatible. But
although some Perl 6 features can be downloaded, another year has
passed with the only release information being given as "when it's
ready". Even when it is, work will continue on Perl 5, which is
likely to remain mainstream for years to come.
Training
See perl.com, perl.org, and
Perl Mongers. The
Perl "Bible",
Programming
Perl, published by O'Reilly and Associates, has a camel on the
cover, which has become emblematic of Perl, rather like the Linux
penguin.
Jobs and money
Perl developers £25,000 to £35,000 Unix systems administrators
with Perl £30,000 to £40,000.