Il suo ideatore, Larry Wall, definisce così il suo linguaggio:


La caratteristica più peculiare di questo linguaggio è la libertà di espressione che consente al programmatore: è un linguaggio “ridondante” dal punto di vista delle strutture logiche e di flusso.
Il motto del Perl è “There’s more than one way to do this” (c’è più di un modo per farlo)
Alcuni esempi di utilizzo:
- utility di sistema
- espressioni regolari
- cpan, una grande quantità di package
- accesso a database
- networking
- programmazione CGI e grafica
- introduzione al linguaggio di programmazione: linguaggio interpretato, breve cenno ai permessi di esecuzione files su linux e utilizzo dell’interprete
- sintassi di base e le vairiabili (tipi di dato, utilizzo di apice e doppo apice per la dichiarazione del valore)
- Le operazioni fondamentali con le variabili
- utilizzo di STDIN, STDOUT e STDERR
- dichiarazione di un array
- i cicli foreach, for, while
- le condizioni if e unless
- utilizzo di swith/case
- il ciclo while
- le principali funzioni di perl array (shift, unshift, pop, push)
- utilizzo degli hash
- utilizzo dei files: stampare un file a video, aggiungere una riga al file o crearne uno nuovo
- utilizzo della funzione stat
- le espressioni regolari: la sintassi ed il loro funzionamento
- utilizzo delle variabili $1, $2 …
- le subroutine (funzioni)
- introduzione all’utilizzo delle variabili come riferimenti ad altre variabili
- utilizzo delle variabili come riferimenti a strutture di dat
- Definizione di un package e utilizzo di bless
- iterazione con il sistema operativo: le funzioni system, exec e l’apice inverso
- utilizzo dei threads
- utilizzo di threads::share avvero variabili il cui contenuto è disponibile da ogni thread e quando un processo modifica un valore questo è disponibile anche per tutti gli altri thread
- utilizzo dei Socket