Monté par défaut et en état de marche dans toutes
les distributions Linux, c'est le langage qui sert le plus avec le bash.
Pratique, facile, rapide et pourtant magique en ce qui concerne la
manipulation de texte et toutes les autres travaux quotidiens sur votre
PC. J'irai même plus loin, c'est l'utilitaire absolu, la caisse à
outils de votre ordinateur de bureau, le langage qui ressemble le plus
à Linux (dans sa liberté d'écriture, et son efficacité).
Vous trouverez le gros de la doc en français sur le site : http://www.enstimac.fr/Perl/
et (en amerloque) à la racine http://www.perl.com/CPAN-local/doc/
Livre de ref ( les seuls que j'ai pu me payer sont ceux qu'il faut avoir,
( très bien traduit en français)):
- Introduction à Perl (Randal L Schwartz & Tom Christiansen)
est le livre pour commencer l'étude de ce langage. Vraiment très
bien fait comme un cours avec des exercices. Explications claires, dans
une atmosphère sympathique .
- le camel-book ( Programmation en Perl) écrit par Larry Wall,
qui est à l'origine du langage même, est le livre perl de
référence. Il traite de tout, bien construit, beaucoup de
matières, incontournable, le frère aîné d'introduction
en perl .
Je viens juste de démarrer l'étude de ce langage et pourtant il me plaît vraiment car l'interpréteur perl semble s'adapter, comprendre le langage parlé, c'est à dire qu'il permet de programmer (à main levé) sans faire d'ordinogrammes ou autres plan de travail. Il est si souple et puissant que l'on peut l'écrire à la demande.
C'est le style de langage qui permet d'extraire un rapport de n'importe
quel format de document, de placer les éléments voulus dans
des variables, listes ou tableaux qui pourrons s'auto extraires, ce mettre
à jour, s'auto gérer.
Avec un minimum de pratique vous pouvez écrire des routines
qui vous passerons un coup de balai après chaque session, en triant
les fichiers par extensions et/ou dates et en les rangeants dans les répertoires
adéquats avec un nom approprié en leur insérant une
balise commantaire qui les rendra moins con.
A titre d'exemple voici mon
premier programme Perl pour me bidouiller un correcteur d'orthographe
pour mon navigateur
netscape (anglaise version, comme vous, n'est il pas ?). Bon... c'est
pour montrer un exemple, rien d'autre, car il y a moyen de faire mieux,
plus simple, plus adapté mais le maître mot de perl n'est
il pas (il y a toujours plus d'une façon de le faire).
exemple: exemple
ici et là
mais aussi là
et ici et surtout
là
et là ainsi aussi
qu'ici et que là,
d'ailleurs
là aussi
et là, là,
là,
là.
Les deux dernier sont écrit depuis Windows (Active Perl) car Perl
peu fonctionner sur tous les systèmes (seul léger inconvénient
le DOS de Windows n'a que 50 lignes pour contrôler les retour, mais
c'est peut être moi qui suis un imbécile).
Avant de poursuivre, à premier abord tous ces termes barbares
paraissent compliqués mais il n'en est rien, et il faut bien appeler
les choses par leurs noms et c'est plus pratique après, pour comprendre
les règles et les généralités. Enfin, Il y
a dans Perl beaucoup de caractères simples ou doubles, qui sont
interprétés par perl comme des caractères spéciaux,
qui signifie quelque chose d'autre que leur valeur littérale, comme
ailleurs d'ailleurs (exemple: un, "un", un (u * n), un dans uncoment, etc...).
Dans perl c'est pareil, suivant comment un caractère est placé
il signifie une chose ou une fonction spéciale, (normal car pour
faire tous ce que perl peut accomplir il lui faut des biscuits) mais pas
de panique, l'interpréteur perl n'ai pas tordu, lui ...
et il comprendra normalement de quoi vous parlez.
Si vous avez, quelques petites notions de bash ou C, elles prendrons
une toutes autre importances en Perl, car elles vous permettrons de vous
lancer de suite dans la scripture perlée ou perlure scripté.
Voici quelques lumières sur Perl, bien qu'il y est des sites,
en français (et c'est très rare), très bien pour apprendre
et ou je vous conseille vivement d'aller Gaborit
***** le site 5 étoiles du PPPM.
Et n'oubliez pas le proverbe chinois de V.Hugo "Nobody is perfect,
but Perl".