PERL


Ouvrages et sites de référence

- "Perl 5", traduction de "Teach Yourself Perl 5 in 21 days" de David Till (éd. Simon & Schuster MacMillan).
- http://www.alianwebserver.com/informatique/languages/perl/faq_perl.htm : FAQ du neswgroup fr.comp.lang.perl
- http://www.enstimac.fr/Perl/ : traduction de la documentation (perldoc)
- http://www.perl.com/CPAN/ : avant de faire quoi que ce soit (mais après avoir lu ces pages, ou de meilleures, si vous débutez :-)), pensez à y jeter un coup d'oeil pour savoir si un module n'a pas déjà été développé pour ce que vous voulez faire. Les modules sont l'équivalent de bibliothèques de programmes auxquels on peut faire appel dans son propre code. Il en existe une quantité faramineuse ...
(Note presque perso : pour installer un module en local :
perl Makefile.PL -lib=/mon/rep/avec/mes/modules/a/moi
avant le make et make install. Puis, pour l'utiliser :
use lib "/mon/rep/avec/mes/modules/a/moi";)

Introduction

Perl est un langage interprété et non compilé, fréquemment employé entre autres pour la réalisation de scripts CGI (Common Gateway Interface). Un programme Perl nécessite un ordinateur et un système d'exploitation sur lesquels tourner, un simple éditeur de texte pour taper les lignes de code, un interpréteur pour l'exécuter, et ... de la perséverance, comme tous les outils informatiques.
Une fois le script Perl tapé, il suffit de le rendre exécutable (chmod +x nom_du_programme), puis de "l'invoquer", soit directement :
prompt > nom_du_programme
soit indirectement :
prompt > perl nom_du_programme

La première ligne du script Perl doit contenir l'instruction
#!/bin/perl
où on remplacera éventuellement /bin/perl par le répertoire contenant l'interpréteur s'il ne se situe pas au même endroit dans votre arborescence.

Les options de la ligne de commande sont les suivantes :

-w : affichage des warnings
-c : vérification de la syntaxe sans exécution
-e : exécuter un programme à une ligne
-p : imprimer les fichiers passés en argument après traitement
-n : traiter plusieurs fichiers (cf. <> ...)
-a : décompose chaque ligne d'entrée en liste de mots, stockée dans la variable spéciale @F.
-F : utilisée en conjonction avec -a, elle spécifie le modèle utilisé pour la décomposition des lignes d'entrée
-0 : spécifie le caractère de fin de ligne d'entrée
-l : spécifie le caractère de fin de ligne de sortie
 

Pour le reste, ces pages d'apprentissage de Perl sont divisées en plusieurs sections (9, pour l'instant), à savoir :
Variables scalaires et variables tableaux (ou listes) - Lecture de données
Gestion des fichiers et des répertoires - Formats d'impression
Boucles et instructions conditionnelles
Sous-programmes
Les modèles
Outils de manipulation de chaînes et de listes
Les tableaux associatifs
Les références
Divers (programmation orientée objet, variables système, le debugger de Perl, ...)
Quelques exemples