What Is It?

Larry Wall released Perl, a dynamic programming language, in 1987. Perl borrows features from other languages such as C, shell scripting (sh), AWK, sed and Lisp. Perl initially was widely adopted for its text processing strengths and for its lack of arbitrary limitations provided by many then-current scripting languages. Perl 5, released in 1994, represented a nearly complete rewrite of the language interpreter and added many new features including objects, references and modules. Perl 5 remains active, with the release of Perl 5.10.0 in December 2007. This version includes a new switch statement (’given/when’), regular expressions updates, and more features that bring the language closer to a future Perl 6 release.

Perl is free software licensed under both the Artistic License and GNU General Public License.

Features

Perl is procedural by nature, with variables, expressions, assignment statements, brace-delimited code blocks, control structures and subroutines initially based upon C. Shell programming offered variables marked with leading sigils, which unambiguously identify the data type of the variable in context. The sigils allow variables to be interpolated directly into strings. Additionally, Perl contains many built-in functions which provide tools often used in shell programming such as sorting and calling on system facilities.

Further adoptions include lists from Lisp, associative arrays from AWK, and regular expressions from sed. These tools simplify and facilitate many parsing, text handling, and data management tasks. All versions of Perl provide automatic data typing and memory management. The interpreter knows the type and storage requirements of every data object in the program; it allocates and frees storage for them as necessary by using reference counting so it cannot deallocate circular data structures without manual intervention.
Perl has many and varied applications, compounded by the availability of many standard and third-party modules.

Who Is it For?

Perl programming is designed for developers who want to create CGI scripts and dynamic Web applications. Perl is an integral component of the popular LAMP solution stack for Web development. Many developers use Perl to tie together systems and interfaces that normally would not interoperate and to convert or process large amounts of data for tasks like report creation. This capability makes Perl a popular tool for system administrators. Finally, Web designers can create GUIs (Graphical User Interfaces) with Perl.

Compatibility

Perl can be made portable across Windows and Unix. Portable Perl code often is used by suppliers to simplify packaging and software maintenance for software build and deployment scripts. Although particularly prevalent on UNIX and Unix-like systems, it has been ported to other platforms. A special port called MacPerl was shipped independently for the Mac OX Classic environment. Microsoft Windows users typically install one of the native binary distributions of Perl for Win32, most commonly called ActivePerl. While a Perl compilation from source code under Windows is possible, most installations lack the requisite C compiler and build tools. To address this and other Perl on Windows platform issues, win32.perl.org was launched in 2006.

Featured Web Hosts that Offer Perl

All Web Hosts that Offer Perl