Previous Next Table of Contents

1. Introduction

1.1 Présentation

perl est un langage interprété (avec une phase interne de pré-compilation) optimisé pour traiter des fichiers texte, mais qui peut également être utilisé pour diverses tâches d'administration-systèeme.

Sa syntaxe s'inspire très largement de celles de C, awk, sed et sh, ce qui rend son apprentissage très facile pour toute personne ayant un peu d'expérience avec ces outils. Néanmoins, pas d'affolement si vous ne les connaissez pas, vous pourrez apprécier certains concepts avec un oeil neuf.

Il n'y a aucune limitation sur la taille des données ou sur leur contenu (une chaîne peut contenir le caractère nul, et la gestion de la mémoire qu'elle utilise n'est pas à la charge du programmeur).

Une grande quantité de modules permet de lui ajouter rapidement diverses extensions (CGI, Tk, Msql, POSIX, Curses, NNTP, etc).

Un des ses avantages est qu'il permet d'écrire rapidement des applications puissantes qui peuvent tourner immédiatement sur plusieurs plates-formes différentes. Son utilisation va donc du prototypage rapide d'applications au développement complet de programmes divers et portables.

1.2 Historique

perl a été conçu en 1987 par Larry Wall. C'est à la même personne que l'on doit le lecteur de news rn ainsi que l'utilitaire patch, bien connu des Linuxeurs/iens/istes. Il avait besoin à l'époque de générer des rapports sur le trafic engendré par un système analogue aux News actuelles, et les outils dont il disposait à l'époque étaient soit pas assez puissants, soit pas assez souples.

Il a donc conçu un langage adapté à ses besoins, c'est-à-dire capable d'analyser des données textuelles pour concevoir des rapports, d'où l'acronyme utilisé: Practical Extraction and Report Language. Cette signification politiquement correcte n'est apparue, d'après le folklore, qu'après le terme plus précis: Pathologically Eclectic Rubbish Lister.

Ayant mis sa création à disposition d'autres personnes, il a ensuite intégré de nombreuses fonctionnalités (appels systèmes, etc) qui lui étaient demandées, ce qui a conduit le langage a être utilisé par de nombreux administrateurs-système.

1.3 Problème de version ?

Ces derniers temps ont vu une nouvelle source de problèmes émerger dans la communauté perl, à l'occasion de la sortie de la version 5 du langage. La version précédente, généralement 4.036, était alors utilisée depuis quelques années, quand la nouvelle version est sortie. Celle-ci apporte de nombreuses améliorations, directement visibles ou plus internes, tout en restant compatible avec les anciennes versions du langage (il faut noter que certains scripts écrits pour perl version 1 fonctionnent encore sans changement avec la version actuelle).

La compatibilité n'est cependant pas totale : un certain nombre d'incompatibilités mineures ont été introduites et peuvent obliger à reprendre certains scripts. L'exemple le plus courant est le fait que le caractère @ doit maintenant être précédé d'un backslash à l'intérieur d'une chaîne de caractères, afin que le @ ne soit pas interprété comme un préfixe de tableau.

L'ensemble des incompatibilités, ainsi que les pièges les plus courants pour les personnes utilisant C ou awk sont présentés dans la page de manuel perltrap

Cet article est consacré principalement à perl5, et plus spécifiquement perl5.003 ou supérieur. Cette dernière version est en effet celle qui est la plus pratique à utiliser ou installer, et la seule activement maintenue.

1.4 Qu'apporte perl5 par rapport à la version précédente ?

Voilà quelques unes des améliorations les plus évidentes:


Previous Next Table of Contents