|
|
| Gestion - Créer votre Blog - Prochain Blog |
|
|
Perl (langage pratique d'extraction et de génération de rapports)Dimanche 18 Juin 2006 à 09h59:50 GMT -4.00 Un langage de programmation utilisé dans Linux Le but Perl est né du besoin de disposer d'un langage optimisé pour l'extraction d'informations de fichiers textes et la génération de rapports. Voici quelques-unes des devises qui lui sont couramment associées :
Sa souplesse autorise l'emploi de plusieurs modèles de programmation : programmation procédurale, programmation fonctionnelle et POO.
Les moyens
Perl vise la commodité pour le programmeur (existence de raccourcis qui le font qualifier de langage "diagonal") plutôt qu'un souhait esthétique d'architecture stricte (langages « orthogonaux »). Perl est considéré surtout comme un langage de script et a été qualifié de "ciment assurant la cohésion du web", étant un des langages CGI les plus populaires. Compte-tenu du rôle qu'a eu Perl dans le développement de la "nouvelle économie", une boutade prêtait à la mairie de New York l'intention de rebaptiser Wall Street du nom de son inventeur, ce qui aurait au moins le mérite de ne pas entraîner du tout de frais pour le contribuable !
Perl a un statut de logiciel libre, distribué sous licence artistique et GPL. Perl est porté sur la plupart des systèmes d'exploitation mais excelle particulièrement en environnement POSIX (Cygwin sous Microsoft Windows, Linux, Mac OS X etc.) ; il devient populaire aussi sous Microsoft Windows sans Cygwin grâce à la facilité d'installation de la distribution gratuite ActivePerl (dont la version 5.8 permet l'usage de l'interface graphique) et d'environnements de développement gratuits comme SciTE.
L'intégration dans l'existant
Les programmes Perl sont intégralement portables entre Linux, Mac OS X (ou autre UNIX) et Windows malgré les désignations de fichiers différentes de ces systèmes (Perl remplace tout seul si besoin les « / » par des « \ »). Un exemple du champ d'action de Perl est son utilisation comme script CGI pour faire tourner Wikipedia jusqu'en janvier 2002. Il constitue en effet un bon langage de prototypage.
Perl permet l'usage du moteur d'interface graphiques Tk pour effectuer des entrées-sorties conformes à l'état de l'art. On désigne parfois l'ensemble sous le nom générique Perl/Tk. L'extension Tk est intégrée à ActivePerl depuis la version 5.8 du langage.
Le mécanisme
Bien que Perl profite de la plupart des facilités d'un langage interprété, à proprement parler il n'interprète et n'exécute pas (aucun interpréteur ne le fait, d'ailleurs) le code source une ligne à la fois. Perl compile d'abord le programme entier dans un bytecode intermédiaire (assez dans l'esprit du code objet Java), l'optimisant au passage, et exécute alors ce bytecode. Il est ainsi possible de compiler un programme Perl en bytecode pour s'épargner les phases de compilation lors d'exécutions ultérieures, bien que l'"interpréteur" reste requis pour exécuter ce code.
Les phases de traduction des noms de variables en adresses, traduction de libellés d'opération en code binaire et de traduction en binaire des constantes exprimées en caractères sont d'ailleurs bien connues depuis le milieu du XXe siècle, puisque ce sont très précisément les trois fonctions principales d'un assembleur.
L'avenir proche Perl 6 est en cours de développement. Il tournera dans la machine virtuelle Parrot. Un canular organisé par l'équipe de direction de l'éditeur O'Reilly avec la complicité de Larry Wall et Guido van Rossum (avec annonce d'un livre imaginaire dont l'annonce donnait le fac-simile) a annoncé à une époque la fusion en un langage unique nommé aussi Parrot de Perl 6 et de Python, à la grande panique de certains aficionados des deux langages.
En parallèle, Autrijus Tang, aidé d'un petit groupe de développeurs, est en train de développer un interpréteur Perl 6 en Haskell nommé Pugs.
Exemples de code Certaines personnes affirment avec humour que Perl veut dire 'Pathologically Eclectic Rubbish Lister' (collectionneur pathologique de déchets variés) à cause de l'utilisation intensive de caractères spéciaux chargés de sens dans la syntaxe du langage, comme on peut le voir dans cet exemple de programme:
# Un exemple de programme en Perl et sa sortie à l'écran :
À l'endroit : 'camel'. À l'envers : 'lemac'. Les troisième et quatrième lignes de cet exemple montrent l'usage d'expressions rationnelles.
Ces caractères spéciaux sont liés à la puissance de traitement de Perl :
Aspects communautaires
Perl a une base d'utilisateurs vaste et diversifiée. Pour plusieurs types d'utilisateurs du langage, c'est d'ailleurs leur seul point commun. Les administrateurs système en sont friands, les développeurs en apprécient la concision et la puissance, des linguistes et des biologistes - habituellement peu enclins à se pencher sur le code - l'utilisent comme langage de référence dans leurs applications métiers. Perl est particulièrement apprécié en bio-informatique où les programmes font l'objet de remaniements constants.
La base CPAN regroupe et met gratuitement à la disposition des utilisateurs de Perl du monde entier 15,4 millions de ligne de code (juillet 2004) sous forme de modules Perl et de synopsis montrant comment les mettre en œuvre. L'effet boule de neige est indiscutable. La synergie aussi.
Opinions Perl suscite de forts sentiments aussi bien chez ses partisans que chez ses détracteurs.
Pour
Les programmeurs qui aiment Perl font typiquement référence à sa puissance, son caractère explicite et sa facilité d'utilisation. Perl offre une infrastructure pour la plupart des tâches courantes de programmation, telles que les chaînes et le traîtement des listes. D'autres tâches, telles que la gestion de la mémoire, sont prises en charge automatiquement et en toute transparence. Les programmeurs issus d'autres langages que Perl trouvent souvent que tous les problèmes auxquels ils s'étaient trouvés confrontés par le passé ne surviennent plus avec Perl. Ainsi Larry Wall le résuma :
En sus de ces bénéfices pratiques, un certain nombres de programmeurs semblent tout simplement apprécier de travailler avec Perl. Les premiers numéros de The Perl Journal comportaient une page intitulée « Qu'est-ce que Perl ? », qui concluait ainsi :
Quelles que soient les raisons, il existe clairement une vaste communauté de personnes passionnées par Perl, ce que démontre les milliers de modules qui constituent le CPAN, et les centaines de propositions formelles qui ont été proposées comme RFC pour Perl 6.
Écrire un commentaire
|
| Gestion du Blog | Conçu par : DynamiqueGestion |