Vai al contenuto principale
BiografiaStoria dell’informaticaPrincipiante

Larry Wall: Perl, il linguaggio che ha collegato gli strumenti di Internet

Scopri come Larry Wall ha creato Perl per automatizzare Unix, elaborare testo e costruire una comunità, con i punti di forza e i limiti della sua progettazione espressiva.

Pubblicato 24 agosto 2026Lettura : 6 minDi Yann Bastien
Ritratto di Larry Wall davanti a un terminale che richiama Perl, Unix ed espressioni regolari
Mostra indice
  1. Tra informatica e linguistica
  2. Prima di Perl: rn e patch
  3. Il problema concreto che porta a Perl
  4. Perché Perl è efficace con il testo
  5. «C’è più di un modo per farlo»
  6. Perl 4: documentazione e comunità
  7. Perl 5: dallo script alla piattaforma
  8. CPAN: l’ecosistema come parte del linguaggio
  9. Perl e il primo Web dinamico
  10. Una cultura del linguaggio dichiarata
  11. Perché Larry Wall conta ancora
  12. Cronologia
  13. Domande frequenti
  14. Perché Larry Wall ha creato Perl?
  15. Che cosa significa Perl?
  16. Perché Perl è considerato difficile da leggere?
  17. Che cosa ha reso CPAN speciale?
  18. Perl è ancora usato?

Larry Wall crea Perl per riunire attività che gli strumenti Unix disponibili svolgevano separatamente: percorrere file, riconoscere pattern, convertire formati, produrre report e coordinare comandi. Shell, sed, AWK e C sapevano fare ciascuno una parte del lavoro, ma passare continuamente dall’uno all’altro appesantiva gli script.

Perl riunisce queste capacità in un linguaggio la cui priorità è l’utilità pratica. Le espressioni regolari fanno parte della sintassi, testo e numeri si manipolano con poca cerimonia e un breve script può crescere fino a diventare un’applicazione più grande.

Questa libertà rende Perl molto influente nell’amministrazione dei sistemi e nel primo Web, ma crea anche una tensione: un linguaggio molto espressivo lascia al programmatore la responsabilità di non trasformare la libertà in oscurità.

Tra informatica e linguistica

Larry Arnold Wall nasce nel 1954 a Los Angeles e cresce anche a Bremerton, nello Stato di Washington. Alla Seattle Pacific University studia chimica, musica e informatica, arrivando a un percorso dedicato alle lingue naturali e artificiali.

Studia poi linguistica a Berkeley con la moglie Gloria. Questa formazione influenza il suo modo di pensare i linguaggi: una lingua naturale possiede contesto, irregolarità, diversi livelli di padronanza e più formulazioni accettabili. Wall trasferisce consapevolmente parte di questa ricchezza nella programmazione.

Prima di Perl: rn e patch

Wall è già noto nella comunità Unix prima di pubblicare Perl. Sviluppa rn, un lettore Usenet che gestisce lo stato di lettura e filtra gli argomenti, e patch, che applica a file le differenze prodotte da diff.

patch diventa fondamentale per la collaborazione prima delle moderne piattaforme di codice: invece di inviare copie complete di un programma, gli sviluppatori distribuiscono soltanto le modifiche.

Questi strumenti anticipano caratteristiche di Perl: elaborazione tollerante del testo, priorità al lavoro reale e distribuzione del codice in una comunità connessa.

Il problema concreto che porta a Perl

A metà degli anni Ottanta Wall lavora su più macchine Unix e dati distribuiti. AWK eccelle nell’elaborazione riga per riga, sed trasforma testo, la shell lancia comandi e C offre più controllo, ma combinare continuamente strumenti diversi è costoso.

Wall inizia quindi un linguaggio che unisce espressioni regolari e modello pattern-azione di AWK, comandi della shell e strutture di dati da linguaggio generale. Perl 1.0 viene pubblicato su Usenet il 18 dicembre 1987.

Il nome viene poi reinterpretato con retroacronimi come Practical Extraction and Report Language, ma ufficialmente Perl non è un acronimo che abbia determinato il progetto originale.

Perché Perl è efficace con il testo

In Perl le espressioni regolari sono integrate direttamente nel codice. Un programma minimo può mostrare le righe che contengono un errore:

while (<STDIN>) {
    print if /ERROR\s+\d+/;
}

La riga corrente è disponibile implicitamente e il pattern viene applicato senza argomento esplicito. Questa densità è produttiva per chi conosce le convenzioni, ma può disorientare chi non vede i valori impliciti.

Perl offre array, hash e conversioni contestuali tra stringhe e numeri. Distingue inoltre contesto scalare e contesto di lista, rendendo il codice compatto ma aumentando l’importanza del contesto.

«C’è più di un modo per farlo»

Il motto TIMTOWTDI, There’s more than one way to do it, esprime la diffidenza di Wall verso un’unica forma legittima per ogni problema.

Un amministratore può scrivere un filtro compatto; un’applicazione più grande può usare funzioni nominate, moduli e stile esplicito. Ma programmi equivalenti possono usare idiomi molto diversi. use strict, use warnings, convenzioni, test e revisioni aiutano a controllare questa libertà.

Perl 4: documentazione e comunità

Le prime versioni evolvono rapidamente con gli utenti. Perl 2 migliora le espressioni regolari, Perl 3 i dati binari e Perl 4 stabilizza la linea diffusa all’inizio degli anni Novanta.

Programming Perl di Larry Wall e Randal L. Schwartz, il celebre Camel Book, offre una documentazione strutturata e trasmette anche idiomi e cultura della comunità. Usenet rende segnalazioni e patch parte integrante dell’evoluzione del linguaggio.

Perl 5: dallo script alla piattaforma

Perl 5, pubblicato nel 1994, introduce riferimenti, strutture annidate, closure lessicali, moduli e basi per la programmazione orientata agli oggetti.

Perl può così rimanere un linguaggio per piccoli script e sostenere applicazioni più grandi. La compatibilità con il passato favorisce l’adozione ma obbliga anche a conservare molti comportamenti storici.

CPAN: l’ecosistema come parte del linguaggio

Il Comprehensive Perl Archive Network (CPAN) nasce a metà anni Novanta grazie alla comunità. Jarkko Hietaniemi e molti maintainer costruiscono l’infrastruttura, mentre migliaia di autori pubblicano moduli.

CPAN offre convenzioni di nome, metadati, test e un percorso comune di distribuzione. Anticipa i registri di pacchetti poi centrali per Python, JavaScript, Rust e altri ecosistemi, mostrando anche rischi come dipendenze abbandonate e qualità variabile.

Perl e il primo Web dinamico

Negli anni Novanta i server Web usano spesso CGI per avviare programmi che generano risposte HTTP. Perl è già presente su molti sistemi Unix, manipola bene le stringhe e dispone di librerie di rete. Diventa una scelta naturale per moduli, motori di ricerca e primi siti dinamici.

Il soprannome «nastro adesivo di Internet» descrive la rapidità con cui gli script collegano server, file, posta e database. CGI e script scritti in fretta mostrano però problemi di prestazioni e sicurezza, a cui risponderanno mod_perl, framework e server applicativi più strutturati.

Una cultura del linguaggio dichiarata

Wall non presenta Perl come una costruzione matematicamente minimale. Difende contesto, indizi visivi e più forme di espressione. Le tre «virtù» umoristiche del programmatore - pigrizia, impazienza e orgoglio - valorizzano automazione, feedback rapido e qualità del risultato.

Questa cultura rende Perl riconoscibile, ma spiega anche perché le squadre abbiano bisogno di convenzioni quando uno script personale diventa software di lunga durata.

Perché Larry Wall conta ancora

Perl ha mostrato presto che un linguaggio non è soltanto sintassi e interprete: documentazione, ecosistema di pacchetti, comunità e strumenti condivisi sono altrettanto importanti. Molti linguaggi moderni adottano ormai naturalmente questo modello.

L’influenza di Wall sta anche in una domanda pragmatica: quanta complessità può assorbire il linguaggio per permettere all’essere umano di esprimere più rapidamente un compito concreto? Perl ha spesso scelto l’espressività, producendo enorme produttività e limiti altrettanto istruttivi.

Cronologia

  • 1954: nascita a Los Angeles.
  • Anni 1980: sviluppo di rn e patch.
  • 1987: pubblicazione di Perl 1.0 su Usenet.
  • 1991: Perl 4 stabilizza la prima famiglia.
  • 1994: pubblicazione di Perl 5.
  • Metà anni 1990: sviluppo di CPAN.
  • Anni 1990: forte diffusione nel Web dinamico.
  • Oggi: Perl resta presente in sistemi esistenti, automazione, elaborazione del testo e nella sua comunità.

Domande frequenti

Perché Larry Wall ha creato Perl?

Per riunire elaborazione del testo, espressioni regolari, report e comandi di sistema in un unico linguaggio invece di passare continuamente tra shell, sed, AWK e C.

Che cosa significa Perl?

Perl non è ufficialmente un acronimo. Interpretazioni come Practical Extraction and Report Language sono nate in seguito.

Perché Perl è considerato difficile da leggere?

Permette variabili implicite, comportamento dipendente dal contesto, espressioni regolari dense e molti idiomi. Codice Perl scritto con chiarezza può essere manutenibile, ma richiede disciplina.

Che cosa ha reso CPAN speciale?

Ha unito un grande archivio di moduli a metadati, test e distribuzione comuni, rendendo l’ecosistema una parte centrale del linguaggio.

Perl è ancora usato?

Sì. Il suo ruolo è minore rispetto all’epoca del primo Web, ma resta usato per applicazioni esistenti, amministrazione di sistemi, testo e automazione.

Questo articolo ti è stato utile?

Raccolta

Linguaggi di programmazione

24 / 26

  1. 01Grace Hopper: dai primi compilatori a COBOL
  2. 02John Backus: FORTRAN, la notazione BNF e il rifiuto del codice macchina
  3. 03Dennis Ritchie: il linguaggio C al cuore di Unix
  4. 04FORTRAN: dimostrare che un compilatore può competere con l'assembly
  5. 05Il linguaggio C: rendere portabili i sistemi senza nascondere la macchina
  6. 06Niklaus Wirth: da Pascal a Oberon, progettare con la semplicità
  7. 07Bjarne Stroustrup: progettare C++ senza rinunciare alle prestazioni
  8. 08Pascal: imparare a programmare rendendo visibile la struttura
  9. 09C++: da C with Classes al C++ moderno
  10. 10Programmazione orientata agli oggetti: oggetti, messaggi e astrazioni riutilizzabili
  11. 11Guido van Rossum: creare Python per rendere il codice leggibile
  12. 12Brendan Eich: JavaScript, dal prototipo Netscape allo standard del Web
  13. 13James Gosling: l'ingegnere all'origine di Java
  14. 14Python: leggibilità, batterie incluse e un ecosistema globale
  15. 15Java: scrivere una volta, eseguire ovunque
  16. 16JavaScript: il linguaggio che ha reso interattivo il Web
  17. 17Ken Thompson: da Unix a Go, la semplicità come metodo
  18. 18John McCarthy: Lisp e l'idea di programmare con i simboli
  19. 19Alan Kay: Smalltalk e il computer come medium personale
  20. 20Barbara Liskov: l'astrazione che ha reso modulare il software
  21. 21Robin Milner: ML, dimostrazione assistita e linguaggi dell'interazione
  22. 22Brian Kernighan: AWK, Unix e l'arte di spiegare il codice
  23. 23Anders Hejlsberg: da Turbo Pascal a C# e TypeScript
  24. 24Larry Wall: Perl, il linguaggio che ha collegato gli strumenti di Internet
  25. 25Yukihiro Matsumoto: Ruby e la felicità del programmatore
  26. 26Rasmus Lerdorf: PHP e la democratizzazione del Web dinamico
BiografiaStoria dell’informaticaPrincipiante

Brian Kernighan: AWK, Unix e l'arte di spiegare il codice

Scopri come Brian Kernighan ha contribuito ad AWK, diffuso C e Unix, creato strumenti specializzati e stabilito una pedagogia duratura della programmazione.

24 agosto 20265 min