Perl, un langage de script intelligent

Le langage Perl est réputé pour être un langage de script qui cherche à comprendre et exécuter la volonté du développeur. Mais qu’est ce que cela implique dans le langage ? et qu’est ce qu’un langage de script ?

Malcolm Houel
ELP-2018
3 min readDec 11, 2018

--

Dans la multitude des langages de programmation, il existe des langages qui sont systématiquement compilés dans des exécutables, contenants du code machine, et des langages de script. Ces derniers sont compilés et interprétés au moment de l’exécution.

Schéma des langages compilés
Schéma des langages de script

De plus, ces langages disposent d’instructions de haut niveau, contrairement au C ou au C++. Souvent, il n’est pas nécessaire de gérer les aspects techniques tels que la gestion de la mémoire.

Perl est un langage développé en 1987 par Larry Wall qui fait partie de ces langages interprétés. On lui donne souvent comme surnom “Practical Extraction and Reporting Language”, ou langage d’extraction et de communication pratique; bien que Perl ne soit pas un acronyme…

Symbole de la “Programming Republic of Perl”

Pour exécuter un script, il suffira d’appeler l’interpréteur “perl” présent nativement sur tous les systèmes Linux avec la commande : “perl [chemin_vers_le_script]”. On peut également ajouter le chemin vers notre interpréteur à la première ligne de notre code et appeler notre script comme un exécutable. Cette ligne s’appelle le shebang.

Exemple de shebang à la première ligne d’un script

Fais ce que je veux, pas ce que je dis

Le langage Perl s’articule autour de plusieurs devises telles que “There is more than one way to do it” ou encore “Things that are different should look different”. Mais la devise la plus importante est :

“Do what I mean” - Larry Wall

Derrière cette devise se cache l’idée que le langage doit interpréter le code en essayant de comprendre ce que veut faire le développeur, plutôt que d’exécuter simplement les instructions.

Il existe une multitude d’exemples qui illustrent cette caractéristique, comme la possibilité d’utiliser certains opérateurs entre des variables de types différents. En effet, on peut, par exemple multiplier une chaîne de caractère par un entier pour la dupliquer :

Lorsque l’on code en Perl, il faut savoir que le langage est faiblement typé et qu’il utilise le trans-typage de façon implicite dès lors qu’on effectue une opération sur des variables de types différents.

Cette caractéristique, bien qu’elle paraisse ici très séduisante, peut être à l’origine de nombreux bugs puisque le développeur perd la main sur les types des variables et que les erreurs que celui-ci pourrait commettre n’entraînent pas l’arrêt de l’exécution du programme.

Ce qu’il faut retenir

Finalement, Perl est un langage très intuitif qui sera donc facile à prendre en main. Toutefois, cela implique de faire preuve d’une vigilance particulière aux types des variables.

L’exécution se fera simplement en utilisant un interpréteur, présent sur toutes les machines sous Linux.

--

--