Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Perl 6 sera-t-il renommé avec un nom radicalement différent pour se démarquer de Perl 5 ?
La communauté Perl divisée sur la décision à prendre après la sortie de Perl 6 qui rompt avec Perl 5

Le , par Olivier Famien

67PARTAGES

7  0 
Êtes-vous pour ou contre le renommage de Perl 6 ?
Perl est un langage de programmation créé par Larry Wall en 1987. Sa syntaxe s’inspire du langage C avec la possibilité d’ajouter des expressions régulières directement dans le langage. Dès le départ, il est utilisé majoritairement comme un langage de scripts d’administration système sous UNIX. Mais avec le temps, de nombreuses fonctionnalités lui sont ajoutées ce qui lui confère les atouts d’un langage généraliste. Que ce soit pour écrire des scripts shell, des applications web, des clients lourds ou encore faire communiquer des modules de gros systèmes, il est possible d’utiliser le langage Perl.

Comme avantages, les utilisateurs de Perl soulignent qu’avec ce langage, il existe plus d’une façon de faire les choses. Cela sous-entend que pour une tâche donnée, plusieurs moyens peuvent être utilisés pour atteindre son objectif. Cette manière de faire vient contraster avec la philosophie d’autres langages de programmation qui tendent à s’imposer aux développeurs, contrairement à Perl qui lui offre plusieurs choix au développeur. Certains développeurs préféreront donc écrire leur code de manière concise, d’autres choisiront l’option verbeuse et d’autres encore opteront pour le style illisible.

Bien que Perl existe depuis plus de 30 ans maintenant, ce langage est utilisé par de nombreux développeurs. Sur l’index Tiobe, il est classé 19e en ce mois d’août juste derrière Swift qui est langage récent sorti il y a maintenant 5 ans. Actuellement, la dernière version stable du langage est la version 5.30.0. Cette version majeure (Perl 5) existe depuis 1994 et est mise à jour continuellement par Larry Wall lui-même, le créateur du langage. Il est rapide, stable, doté de nombreux modules matures et préinstallé sur de nombreuses distributions Linux. Mais afin d’assurer une rétrocompatibilité avec les anciennes versions de Perl, le langage intègre de nombreuses syntaxes et modules abandonnés. De même, il comporte de nombreux cas spéciaux dont il est difficile de s’en souvenir.


Depuis quelques années, 2015 en l’occurrence, une nouvelle version de Perl est en cours de développement. Cette nouvelle version de Perl qui porte la référence « version 6 » devrait en principe être une évolution directe de la version 5. Cependant, force est de noter que les améliorations apportées dans Perl 6 marquent une rupture nette avec la version 5. Même si la philosophie de Perl 5 constitue toujours la base de la version 6, plusieurs nouvelles fonctionnalités amènent de nombreux développeurs à voir Perl 6 comme un langage radicalement différent de Perl 5.

Par exemple, en Perl 5, nous avons le code ci-dessous :

Code Perl 5 : Sélectionner tout
my @fruits = ("pomme", "poire", "banane"); print $fruits[0], "\n";

En Perl 6, l’on doit maintenant écrire de la manière suivante :

Code Perl 6 : Sélectionner tout
my @fruits = "pomme", "poire", "banane";say @fruits[0];

ou même utiliser l’opérateur <> pour remplacer la fonction qw() utilisée en Perl 5 pour générer une liste de mots.

Code Perl 6 : Sélectionner tout
my @fruits = <pomme poire banane>;

Comme on peut le constater, le sigil $ utilisé pour identifier les variables est maintenant remplacé par le sigil @.

Mais il n’y a pas que les sigils qui ont changé. Que ce soit les twigils, les variables spéciales, les méthodes, les listes de chaînes, les listes multidimensionnelles, les déclarations de portée, les listes, les invocations, les noms, la concaténation des chaînes de caractères, les blocs et les déclarations, les syntaxes d’expressions régulières, les sous-routines, les surcharges de fonctions, les fonctions intégrées, les arguments de ligne de commande, etc., tous ces éléments ont connu des changements avec Perl 6.


Avec l’édition de Perl 6, dont le compilateur est nommé Rakudo, la communauté Perl s’est retrouvée à la croisée des chemins comme celle de Python qui devait choisir entre Python 2 et Python 3.

Pour certaines personnes (beaucoup plus jeunes en l’occurrence), Perl est considéré comme un langage de « grand-père », à peu près de la même façon que les gens voient COBOL aujourd’hui. Ces personnes estiment que l’évocation du mot Perl renvoie une mauvaise image qui pourrait contribuer à éloigner les jeunes développeurs. Pour cette catégorie de personnes, le changement de nom de Perl 6 pourrait favoriser l’adoption du langage par de nouvelles personnes tout en améliorant la perception que le public a du langage.

Dans ce sens, Damian Conway, un membre important de la communauté Perl a proposé le nom de « Raku », contrairement au nom « Camelia » qui avait été initialement proposé par Elizabeth (Liz) Mattijsen, un membre très actif dans la communauté Perl et également développeuse de longue date de Perl 5. Pour Conway, si la communauté doit choisir un autre nom, il serait judicieux de réfléchir si le nom « Raku » proposé par Larry Wall n’est pas une alternative viable. Comme arguments de poids, Conway souligne qu’il est « nettement plus court que "Camelia" (se compose parfaitement de 4 caractères), il est légèrement plus interrogeable, a des associations agréables avec le " confort " ou " l’aisance " en se tournant vers son origine japonaise qui s'accorde même un peu à notre mascotte papillon. Cela permet également au compilateur [nommé] " Rakudo " d'être perçu comme " La voie du Raku " ».

Larry Wall, qui ne trouve aucune objection au cas où la communauté souhaiterait changer le nom Perl 6, a déclaré lors de sa participation à PerlCon 2019 que « les deux langages sœurs sont maintenant suffisamment matures pour prendre soin d’eux-mêmes. Un tel changement de nom n’exigerait plus l’approbation du Dictateur bienveillant à vie ».


Pour d’autres développeurs par contre, Perl 6, bien que différent, devrait être comme considéré comme le successeur de Perl 5. À ce titre, il devrait conserver le nom Perl 6 en continuant son évolution. Pour ces personnes, renommer Perl 6 en un autre nom risque d’entraîner la fragmentation de la communauté, ce qui ne serait en rien bénéfique à la communauté Perl. Si la communauté Python a pu survivre après avoir adopté le nom Python 3, malgré le changement radical lors du passage à Python 3, l’on peut donc croire que la communauté Perl en adoptant le nom Perl 6 survivra egalement, rappellent ces derniers.

Source : Blog Perl, Proposition de Elizabeth (Liz) Mattijsen, Proposition de Damian Conway, Perl 6

Et vous ?

Quel est votre avis sur ce débat ?

Êtes-vous pour ou contre le renommage de Perl 6 ?

Voir aussi

Utilisez-vous sous Windows Perl 5 via ActivePerl, Strawberry Perl ou les deux ?
Programmation : une étude révèle les langages les plus voraces en énergie : Perl, Python et Ruby en tête, C, Rust et C++, les langages les plus verts
Quels sont vos langages de programmation préférés pour applications mobiles en 2017 ? Et pourquoi ? Vous êtes invités à partager votre expérience
Quels sont les langages de programmation les plus utilisés par les développeurs ? Une analyse des évènements publics sur GitHub
Quels sont les langages de programmation que vous détestez le plus en 2017 ? Pourquoi ?
Pensez-vous que Python 3.x était une erreur ? 54 % de développeurs estiment qu'il fallait une étape de transition

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de GLDavid
Membre expert https://www.developpez.com
Le 02/09/2019 à 10:31
Bonjour

Le problème de Perl 6 (et il m'en coûte de dire ça vu que j'ai initié la rubrique Perl sur developpez.com), c'est qu'il a été frappé par le syndrome 'Duke Nukem Forever'. Autrement dit, Perl 6 a été un vaporware.
Et de nos jours, ceci n'est plus tolérable. C'est à ce moment que Python est devenu le langage de script de référence.
Pourquoi ? Parce que Python 3 n'a pas attendu et a été pour le moins drastique dans le changement. Perl 6 est encore ambigü sur ce point.
Autre chose, travaillant dans le domaine des sciences, Perl était à l'époque, le langage des chimistes et surtout des bioinformaticiens. Maintenant, c'est Python (consultez maintenant les dépots de modules de Python). Allons même plus loin, Python supplante même R pour les statistiques et le data science!
Perl doit maintenant jouer la carte de l'évolution continu s'il veut persister à vivre. CPAN doit continuer son expansion. Doit-on couper avec Perl 5? Je me le demande, je me dis que la stratégie de Python 3 a été directe. Codeurs python, était-ce compliqué pour vous de migrer vers Python 3? Y avez-vous gagné au change?
Autrement, point de salut,

@++
4  0 
Avatar de esperanto
Membre éprouvé https://www.developpez.com
Le 02/09/2019 à 13:37
Citation Envoyé par Olivier Famien Voir le message
le changement de nom de Perl 6 pourrait favoriser l’adoption du langage par de nouvelles personnes tout en améliorant la perception que le public a du langage.

Dans ce sens, Damian Conway, un membre important de la communauté Perl a proposé le nom de « Raku », contrairement au nom « Camelia » qui avait été initialement proposé par Elizabeth (Liz) Mattijsen, un membre très actif dans la communauté Perl et également développeuse de longue date de Perl 5. Pour Conway, si la communauté doit choisir un autre nom, il serait judicieux de réfléchir si le nom « Raku » proposé par Larry Wall n’est pas une alternative viable. Comme arguments de poids, Conway souligne qu’il est « nettement plus court que "Camelia" (se compose parfaitement de 4 caractères), il est légèrement plus interrogeable, a des associations agréables avec le " confort " ou " l’aisance " en se tournant vers son origine japonaise qui s'accorde même un peu à notre mascotte papillon. Cela permet également au compilateur [nommé] " Rakudo " d'être perçu comme " La voie du Raku " ».
Sur le principe de changer le nom du langage, OUI sans aucune hésitation: il y a bien trop de différences, surtout quand l'implémentation de référence n'est disponible que dix ans après la première alpha, pour que le nouveau langage me fasse penser à du Perl. Et pourtant Perl (5) est un de mes principaux langages depuis près de 20 ans.
Raku, ça revient à utiliser le nom de l'implémentation de référence. Discutable et pas très sympa pour les quelques personnes qui avaient tenté une autre implémentation!
Cameila, le problème c'est que si on veut une extension de 3 ou 4 lettres pour les noms de fichiers, on risque de confondre avec... Caml !
En plus le Camel book, pour autant que je sache, concerne Perl 5...

Citation Envoyé par GLDavid Voir le message
Le problème de Perl 6 (et il m'en coûte de dire ça vu que j'ai initié la rubrique Perl sur developpez.com), c'est qu'il a été frappé par le syndrome 'Duke Nukem Forever'. Autrement dit, Perl 6 a été un vaporware.
Exactement. En fait Perl 6 a voulu faire trop de changements en même temps et n'a réussi que tardivement à en terminer ne serait-ce qu'un seul.
Créer une spécification de Perl, ça devenait nécessaire, personne n'en doute. Mais vouloir changer complètement le langage en même temps (qu'un exemple aussi basique que celui de l'article soit une incompatibilité entre Perl 5 et 6 est déjà révélateur) ça c'était suicidaire.
Ce qu'il aurait fallu faire: puisque Perl 5 n'avait pas de spec, il fallait créer une version 6 proche de la 5 mais avec une spec, et ensuite seulement une 7 avec plein de changements.

Citation Envoyé par GLDavid Voir le message
Parce que Python 3 n'a pas attendu et a été pour le moins drastique dans le changement.
Les changements étaient quand même moins gros qu'entre Perl 5 et 6, et surtout comme tu l'as dit, l'implémentation de référence est arrivée assez vite. Mais ça ne veut pas dire qu'il n'y a eu aucun problème, encore aujourd'hui on est parfois obligé d'installer Python 2.7 - même pas forcément pour programmer, juste pour exécuter un vieux script! - parce que certaines librairies n'ont pas été migrées...

Citation Envoyé par GLDavid Voir le message
Autre chose, travaillant dans le domaine des sciences, Perl était à l'époque, le langage des chimistes et surtout des bioinformaticiens.
et des linguistes aussi, parce que les expressions régulières directement intégrées dans la syntaxe, c'est pratique pour faire du traitement de langage naturel. Et Larry Wall est un linguiste à la base. Si vous trouvez la syntaxe des expressions régulières compliquée, vous serez surpris d'apprendre que mes collègues traducteurs, pas du tout informaticiens contrairement à moi, adorent les utiliser pour faire des corrections semi-automatiques ou des recherches de contrôle qualité dans des traductions! Alors un langage qui les inclut directement dans sa syntaxe, vous pensez bien...

Citation Envoyé par GLDavid Voir le message
Perl doit maintenant jouer la carte de l'évolution continu s'il veut persister à vivre.
C'est un peu ce qu'il fait, on en est à la 5.30 (quand Perl 6 a fait ses premières apparitions on devait en être à la 5.8, peut-être 5.10 tout au plus) et à chaque version ils rajoutent un bout de Perl 6. Si ça continue, Perl 5.50 sera peut-être la première implémentation de Perl 6 réellement utilisée
3  0 
Avatar de Markand
Membre confirmé https://www.developpez.com
Le 02/09/2019 à 8:53
Citation Envoyé par Pyramidev Voir le message
Les pages Wikipédia de Perl (en français et en anglais) correspondent à Perl 5. Perl 6 a des pages Wikipédia à part (en français et en anglais). Je n'avais jamais vu ça dans un autre langage.

Perl 5 est pratiquement mort. Comme Ruby, il s'est fait manger par Python. Python est devenu vraiment gros et connu, donc Perl 6 va avoir du mal à progresser.

Pour l'instant, je n'ai pas d'avis sur la pertinence du renommage.
Pas vraiment non. Ruby est loin d'être mort et Perl 5 non plus.
1  0 
Avatar de Pyramidev
Expert confirmé https://www.developpez.com
Le 31/08/2019 à 20:23
Les pages Wikipédia de Perl (en français et en anglais) correspondent à Perl 5. Perl 6 a des pages Wikipédia à part (en français et en anglais). Je n'avais jamais vu ça dans un autre langage.

Perl 5 est pratiquement mort. Comme Ruby, il s'est fait manger par Python. Python est devenu vraiment gros et connu, donc Perl 6 va avoir du mal à progresser.

Pour l'instant, je n'ai pas d'avis sur la pertinence du renommage.
1  1 
Avatar de darklinux
Membre averti https://www.developpez.com
Le 03/09/2019 à 2:44
J ' avais appris PERL il y a longtemps ( pour moi cela fait partie de la formation d ' administrateur systeme ) , puis j ' ai été obligé de même mettre à Python dans le cadre de mes projets en machine learning , résultat , python a succédé à perl naturellement , il à les avantages de l ' un , moins les archaïsmes , c'est-à-dire du prototypage a la va que je te pousse avec les technologies actuelles et la sécurité d ' exécution
0  0 
Avatar de pvincent
Membre confirmé https://www.developpez.com
Le 06/09/2019 à 8:36
Citation Envoyé par darklinux Voir le message
il rejoindra le musée au côté de Fortran et autre Pascal
Trolldi?
C'est curieux ce besoin qui démange certains de dénigrer Fortran.

Le musée se porte bien: https://gcc.gnu.org/wiki/GFortranStandards

The new features of Fortran 2018 by John Reid (WG5/N2145, non normative)
https://isotc.iso.org/livelink/livel...pen&viewType=1
0  0 
Avatar de Model_T101
Nouveau membre du Club https://www.developpez.com
Le 07/09/2019 à 18:09
Je ne suis pas developpeur mais je m'interresse fortement à Perl6 qui me plait, pour sa facilité d'apprentissage, sa clarté, sa souplesse, sa versatilité, il est subtil et très puissant (de mon point de vu). je lis tres régulièrement les pages de Laurent Rosenfeld et tente d'apprendre et comprendre.

Perl 5 à son nom et son histoire, il est indépendant de Perl 6 lequel à son nom et débute.
Pour moi il n'y a aucune raison de changer de nom, d'ailleurs la preuve on en discute en les désignant par leur noms chacun sait les reconnaitre.
La raison est donc purement cosmétique et non philosophique, par contre les axes sur lesquels je souhaiterais des avancées :

1 - un IDE au moins aussi évolué que PADRE
2 - que les modules fonctionnent sous windows
3 - pouvoir faire une interface graphique sous windows

Sous notepad++ la coloration syntaxique est pas mal mais laisse à désirer selon les contextes.
Avoir les résultats sur la console ou du fichier txt c'est une bonne avancée mais interagir avec une interface graphique serait top.
Et bien sûr un IDE qui serait capable de produire un .exe mais c'est vraiment pas urgent.
0  0 
Avatar de darklinux
Membre averti https://www.developpez.com
Le 02/09/2019 à 10:13
Il va falloir que le nouveau PERL soit pertinent , car dans le cas contraire , il rejoindra le musée au côté de Fortran et autre Pascal
0  1 
Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web