Perl is a free, platform-independent and interpreted programming language (scripting language) that supports multiple programming paradigms.
Traditionally, Perl is also represented in the financial world, especially in the processing of data streams of different types of news sources.
The processing of text using regular expressions as well as many freely available modules, which are collected at a central location (CPAN), are strengths of the language.
Larry Wall was employed as an administrator and programmer at the company Unisys, where he was involved since March 1987 working to develop under the name blacker a secure network for the NSA.
He received several orders to create tools for monitoring and remote maintenance of the software being developed. A major task was to produce clear reports of scattered log files.
Since his existing languages and tools for this appeared to be cumbersome, he developed with the help of his former team-mate Daniel Faigin and his brother Mark Biggar gradually their own language to solve these tasks.
He drew on his knowledge and experience as a linguist and designed Perl close to the human voice habits.
This is expressed in minimum conditions for beginners, a strong compatibility of the language elements and a rich vocabulary that allows also commands whose meanings overlap. Wall sees the needs of a practitioner for freedom and intuitive expression realized.
According to this practical approach, Perl borrowed its vocabulary and its logical structures of the spread in the 1980s under Unix languages and tools, which simplified the learning, but also the Unix philosophy reversed.
Unix and its system commands were compiled and mostly written in C . These commands were logical units and should just master a task : “Do one thing and do it well.
Interpreted shell scripts combined quickly and easily find the commands that could pass each other their results through pipes. Perl violated this philosophy by making these commands become part of the language: C and Shell combines and merges the existing commands and tools .
This was necessary because shell scripts for complex tasks were unsuitable.
On the other hand, they allow for a much more compact programming style, since the use of a UNIX tool can replace many lines of C source code.
To use the advantages of both types of programming , Wall created a combination of C and tools like sed, awk, grep and sort. He added properties of the Bourne Shell, to a lesser extent, elements of Pascal and BASIC, as well as their own ideas.
This merger enabled short, powerful programs that you write quickly and at any time also could test, without having to recompile them what the development also accelerated . Later, additional capabilities of languages like Lisp, Smalltalk, Python or Ruby were imported.