Perl is a general-purpose programming language created by Larry Wall and first released in 1987, built from the start for the job it still does best: reading text and turning it into something useful. Its regular-expression engine, hashes and list handling made it the standard tool for system administration and log processing through the 1990s, and it has never stopped being maintained — the language ships a new stable release every year, with 5.44.0 the current version on perl.org. Perl 5 is dual-licensed under the Artistic License and the GPL, runs on more than a hundred platforms, and carries an archive of third-party modules, CPAN, that is still one of the largest in existence.
cpanm Module::Name or the bundled cpan client.use v5.36 brings subroutine signatures, say, postfix dereferencing and lexical subs without giving up the older style.printf and sprintf, report generation and one-liners with perl -pe and perl -ne cover the everyday jobs of a shell script without a compile step.Test::More and the TAP protocol shaped how most of today’s test runners report results.Perl is the shortest path from a messy text file to a correct answer. Where another language needs a parser, a data model and a build step, a twenty-line Perl script does the same job with a regular expression and a hash — and it runs everywhere a shell runs, with no deployment beyond the interpreter that is already installed. That is why decades of system tooling, monitoring probes, log pipelines and report generators are written in it, and why they keep working. CPAN adds what the core omits: database drivers, HTTP clients, JSON and YAML parsers, mail handling and scientific libraries, most of them maintained for as long as Perl itself. Its pragmas and taint checking also make it unusually well suited to scripts that handle untrusted input under strict and warnings.
sed, awk and grep pipelines.Perl is already installed on virtually every Linux and macOS system — check with perl -v, and on Windows install Strawberry Perl from perl.org. Read the language reference with perldoc perlintro and the module documentation with perldoc Module::Name. Start strict: use strict; use warnings; at the top of every file, and use v5.36 when you want signatures and say. Install modules from CPAN with cpanm (from App::cpanminus) rather than editing files by hand. Remember that Perl 6 became a separate language, Raku — this listing covers Perl 5, which is what perl installs.