46 Facts About Perl


Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages.

FactSnippet No. 537,262

Perl was developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier.

FactSnippet No. 537,263

Perl languages borrow features from other programming languages including C, sh, AWK, and sed; They provide text processing facilities without the arbitrary data-length limits of many contemporary Unix command line tools.

FactSnippet No. 537,264

Perl 5 gained widespread popularity in the late 1990s as a CGI scripting language, in part due to its powerful regular expression and string parsing abilities.

FactSnippet No. 537,265

Perl is a highly expressive programming language: source code for a given algorithm can be short and highly compressible.

FactSnippet No. 537,266

Perl 2, released in 1988, featured a better regular expression engine.

FactSnippet No. 537,267

Perl 3, released in 1989, added support for binary data streams.

FactSnippet No. 537,268

Originally, the only documentation for Perl was a single lengthy man page.

FactSnippet No. 537,269

In 1991, Programming Perl, known to many Perl programmers as the "Camel Book" because of its cover, was published and became the de facto reference for the language.

FactSnippet No. 537,270

Perl 4 went through a series of maintenance releases, culminating in Perl 4.

FactSnippet No. 537,271

One of the most important events in Perl 5 history took place outside of the language proper and was a consequence of its module support.

FactSnippet No. 537,272

Around this same time, development began in earnest on another implementation of Perl 6 known as Rakudo Perl, developed in tandem with the Parrot virtual machine.

FactSnippet No. 537,273

When Perl 7 is released, Perl 5 will go into long term maintenance.

FactSnippet No. 537,274

Programming Perl, published by O'Reilly Media, features a picture of a dromedary camel on the cover and is commonly called the "Camel Book".

FactSnippet No. 537,275

However, unlike the shell, Perl uses sigils on all accesses to variables, and unlike most other programming languages that use sigils, the sigil doesn't denote the type of the variable but the type of the expression.

FactSnippet No. 537,276

Perl has many built-in functions that provide tools often used in shell programming such as sorting, and calling operating system facilities.

FactSnippet No. 537,277

Perl takes hashes from AWK and regular expressions from sed.

FactSnippet No. 537,278

Perl 5 added features that support complex data structures, first-class functions, and an object-oriented programming model.

FactSnippet No. 537,279

All versions of Perl do automatic data-typing and automatic memory management.

FactSnippet No. 537,280

Design of Perl can be understood as a response to three broad trends in the computer industry: falling hardware costs, rising labor costs, and improvements in compiler technology.

FactSnippet No. 537,281

In contrast, Perl was designed so that computer programmers could write programs more quickly and easily.

FactSnippet No. 537,282

Perl has many features that ease the task of the programmer at the expense of greater CPU and memory requirements.

FactSnippet No. 537,283

Perl follows the theory of "no built-in limits, " an idea similar to the Zero One Infinity rule.

FactSnippet No. 537,284

Perl's syntax reflects the idea that "things that are different should look different.

FactSnippet No. 537,285

The preface to Programming Perl begins: "Perl is a language for getting your job done.

FactSnippet No. 537,286

Perl has many and varied applications, compounded by the availability of many standard and third-party modules.

FactSnippet No. 537,287

Perl is used extensively as a system programming language in the Debian Linux distribution.

FactSnippet No. 537,288

Perl is often used as a glue language, tying together systems and interfaces that were not specifically designed to interoperate, and for "data munging, " that is, converting or processing large amounts of data for tasks such as creating reports.

FactSnippet No. 537,289

Perl makes important use of its capability to execute Perl code during the compile phase.

FactSnippet No. 537,290

Perl is often in run time during the compile phase and spends most of the run phase in run time.

FactSnippet No. 537,291

Perl makes the unusual choice of giving the user access to its full programming power in its own compile phase.

FactSnippet No. 537,292

Perl is distributed with over 250, 000 functional tests for core Perl language and over 250, 000 functional tests for core modules.

FactSnippet No. 537,293

Perl is dual licensed under both the Artistic License 1.

FactSnippet No. 537,294

ActivePerl is a closed-source distribution from ActiveState that has regular releases that track the core Perl releases.

FactSnippet No. 537,295

Visual Perl is an ActiveState tool that adds Perl to the Visual Studio.

FactSnippet No. 537,296

Strawberry Perl aims to be able to install modules like standard Perl distributions on other platforms, including compiling XS modules.

FactSnippet No. 537,297

Perl executable is included in several Windows Resource kits in the directory with other scripting tools.

FactSnippet No. 537,298

Large Perl programs start more slowly than similar programs in compiled languages because Perl has to compile the source every time it runs.

FactSnippet No. 537,299

Therefore, Perl programs pay this overhead penalty on every execution.

FactSnippet No. 537,300

Usenet was the first public venue in which Perl was introduced, but over the course of its evolution, Perl's community was shaped by the growth of broadening Internet-based services including the introduction of the World Wide Web.

FactSnippet No. 537,301

The community that surrounds Perl was, in fact, the topic of Wall's first "State of the Onion" talk.

FactSnippet No. 537,302

Perl "golf" is the pastime of reducing the number of characters used in a Perl program to the bare minimum, much in the same way that golf players seek to take as few shots as possible in a round.

FactSnippet No. 537,303

The use of Perl to write a program that performed RSA encryption prompted a widespread and practical interest in this pastime.

FactSnippet No. 537,304

Perl poetry is made possible by the large number of English words that are used in the Perl language.

FactSnippet No. 537,305

Perl community has set aside the "Acme" namespace for modules that are fun in nature.

FactSnippet No. 537,306

Perl has been referred to as "line noise" and a write-only language by its critics.

FactSnippet No. 537,307