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 !

Larry Wall annonce le déploiement imminent de Perl 6
Après de nombreuses années d'attente

Le , par Victor Vincent

20PARTAGES

3  0 
La version 6 du langage de programmation Perl a été dévoilée par le créateur du langage Larry Wall lors d’un événement informatique à San Francisco puis l’information a été relayée par le site officiel de Perl 6. Il a fallu près d’une décennie d’attente aux inconditionnels du langage pour voir cette version. Larry reconnait que le temps d’attente a été long mais ajoute que cela a permis aux développeurs de pouvoir mûrir cette nouvelle version du langage.

La version de développement de Perl 6 disponible en téléchargement, prend en charge la programmation orientée objet et supporte notamment la programmation générique et certains aspects de la programmation fonctionnelle tels que la gestion des rôles et l’envoi multiple de primitives. Perl 6 supporte également la programmation parallèle, les opérateurs sur les vecteurs aussi appelés « super opérateurs », le typage facultatif et progressif entre autres.
L’une des fonctionnalités les plus impressionnantes de Perl 6 que Larry Wall n’a pas manqué de souligner est l’opérateur de séquence et la capacité d’intuition du langage sur les séquences. Larry a également attiré l’attention du public sur le fait que Perl 6 a la capacité d’opérer sur des entiers. Même si tout est objet dans Perl, le programmeur a la possibilité de faire appel comme suit : Int.methode.

Après tant d’effort et une si longue période de développement, Larry espère que Perl 6 ne sera pas que le langage d’une semaine pour ainsi dire et que le langage continuera à exister. Que Perl puisse être en mesure de rivaliser Python pour être adopté par les jeunes codeurs débutant n’est pas gagné d’avance mais a en croire certains participant à l’événement, il est susceptible d’avoir un public enthousiaste.


Source : site officiel de Perl 6

Et vous ?

Comment trouvez vous cette nouvelle version de Perl ?

Voir aussi

le forum Perl

la rubrique Langage de programmation (Cours, Tutoriels, FAQ, etc.)

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

Avatar de djibril
Responsable Perl et Outils https://www.developpez.com
Le 09/10/2015 à 8:52
Bonjour,

Je rajoute à cette actualité la disponibilité non négligeable de plusieurs cours, tutoriels très très intéressants sur Perl 6 sur notre page d'articles de la rubrique Perl et en français.
3  0 
Avatar de esperanto
Membre éprouvé https://www.developpez.com
Le 09/10/2015 à 15:17
Allez hop, il est temps que cette discussion démarre.
Petite remarque préalable, au cas où certains seraient choqués par mes tournures de phrase, croyez bien que je ne cherche absolument pas à critiquer pour faire du troll, seulement à exprimer un ressenti.

Citation Envoyé par Victor Vincent Voir le message
Larry Wall annonce le déploiement imminent de Perl 6,
après de nombreuses années d'attente
15 ans de Perl 5 derrière moi, et à peu près 15 ans que j'entends parler de Perl 6... ou pas : aucun de mes collègues ne l'a jamais vu, quand je l'évoque même les plus perlistes de mes collègues me demandent des détails, et pourtant je n'en sais pas beaucoup plus qu'eux.

A propos de déploiement, je dois dire qu'à part Debian je n'ai encore trouvé aucune distribution Unix proposant Rakudo, et le fait qu'il ne soit qu'en version béta n'est pas une excuse : quand un logiciel est vraiment utile, les distributions le proposent souvent dès la version béta (voir le cas de Wine par exemple...)
Donc, le déploiement prochain je n'y crois pas trop, et alors la migration 5 vers 6 je n'en parle même pas.

Citation Envoyé par Victor Vincent Voir le message

Comment trouvez vous cette nouvelle version de Perl ?
En premier lieu ce qui frappe ce sont les énormes différences avec Perl 5, bien plus qu'avec les versions précédentes.
Ajouter la possibilité de nommer les paramètres de fonction, c'est légitime. Et de les typer, après tout pourquoi pas. Mais changer radicalement la signification des sigills, la syntaxe des expressions régulières, la majorité des opérateurs, le tout nouveau modèle objet, pourquoi, oui pourquoi?
Le fait qu'il y ait eu 15 ans de développement n'y est pour rien : la spécification date bien des années 2000 et elle n'a pas évolué récemment, ce sont les implémentations qui ont évolué.

Citation Envoyé par Victor Vincent Voir le message

Après tant d’effort et une si longue période de développement, Larry espère que Perl 6 ne sera pas que le langage d’une semaine pour ainsi dire et que le langage continuera à exister. Que Perl puisse être en mesure de rivaliser Python pour être adopté par les jeunes codeurs débutant n’est pas gagné d’avance mais a en croire certains participant à l’événement, il est susceptible d’avoir un public enthousiaste.
Pour un peu j'ai l'impression qu'il y a autant de différences entre Perl 5 et 6 qu'entre Perl 5 et PhP. Et aussi autant de fausses ressemblances, de nature à induire en erreur: en cherchant bien je suis certain qu'il est possible d'écrire un programme qui fonctionne aussi bien en Perl 5 qu'en Perl 6 mais qui donne un résultat totalement différent.
Et pourtant le langage ne change pas de nom, juste de numéro. Ce qui risque de poser de gros problèmes pour les nouveaux arrivants, qui pourront croire que la version 5 est obsolète alors même que c'est elle qui est présente sur la majorité des ordinateurs.
Et puis faire démarrer les codeurs débutants avec Perl, même la version 6, je ne vois pas trop l'intérêt. A part peut-être le fort typage qui peut inciter à faire du code propre, sachant que contrairement à Java il ne le rend pas obligatoire pour autant.

Citation Envoyé par Victor Vincent Voir le message

La version 6 du langage de programmation Perl a été dévoilée par le créateur du langage Larry Wall lors d’un événement informatique à San Francisco puis l’information a été relayée par le site officiel de Perl 6.
Pas tout à fait : la spec est prête depuis bien longtemps, c'est l'implémentation Rakudo qui est en passe de devenir enfin stable.
L'occasion donc d'en parler, des implémentations.

Un des rares reproches que je pouvais faire à Perl 5 était l'absence d'une spécification, empêchant par là même l'existence d'implémentations alternatives ou le multi-plateforme, comme on peut le voir en Python et en Ruby qui ont des implémentations en Java et en .NET (et même en Javascript). Alors quand j'ai lu que la version 6 de Perl allait changer ça, je ne pouvais qu'applaudir.
Aujourd'hui je vois surtout une occasion manquée.
Rakudo peut utiliser une JVM, mais l'inverse n'est pas vrai. Du coup impossible de l'utiliser pour écrire un script qui fonctionne aussi bien en local qu'intégré dans un programme Java déjà existant : j'ai eu à le faire récemment et alors, pas d'autre choix que d'utiliser Ruby, sauf que ce langage est inconnu de mes collègues.
Heureusement je viens de découvrir Perlito (dont j'avais vaguement entendu parler en même temps que Perl 6 mais dont je ne soupçonnais pas la liste des langages supportés en backend), la prochaine fois que j'ai la même problématique j'essaierai de l'utiliser pour lancer depuis java des scripts traduits en JavaScript... mais probablement depuis Perl 5.
1  0 
Avatar de Lolo78
Rédacteur/Modérateur https://www.developpez.com
Le 10/10/2015 à 0:23
Bonsoir Esperanto,

Citation Envoyé par esperanto Voir le message

Petite remarque préalable, au cas où certains seraient choqués par mes tournures de phrase, croyez bien que je ne cherche absolument pas à critiquer pour faire du troll, seulement à exprimer un ressenti.
Aucun problème en ce qui me concerne, je ne suis pas du tout choqué et j'estime que l'on peut discuter entre gens de bonne compagnie, même et surtout si on n'est pas d'accord sur tout.

Juste des éléments de réponse à tes interrogations, sans prétendre détenir la vérité.


15 ans de Perl 5 derrière moi, et à peu près 15 ans que j'entends parler de Perl 6... ou pas : aucun de mes collègues ne l'a jamais vu, quand je l'évoque même les plus perlistes de mes collègues me demandent des détails, et pourtant je n'en sais pas beaucoup plus qu'eux.
Moi pareil, bon, seulement 13 ans de Perl 5, pas 15, et aussi très peu entendu de choses sur Perl 6... jusqu'au jour où je me suis décidé à vraiment investiguer, il y a environ 18 mois.

Depuis, j'ai publié 4 tutoriels en français à ce sujet sur ce site, représentant au total plus de 200 pages au format A4 ODT, Word ou PDF (et j'en ai deux autres en cours et d'autres en projet).

Donc, tu as à disposition, avec ces tutos, une documentation certes encore loin d'être complète, mais susceptible de répondre à beaucoup de tes questions.


A propos de déploiement, je dois dire qu'à part Debian je n'ai encore trouvé aucune distribution Unix proposant Rakudo, et le fait qu'il ne soit qu'en version béta n'est pas une excuse : quand un logiciel est vraiment utile, les distributions le proposent souvent dès la version béta (voir le cas de Wine par exemple...)
Donc, le déploiement prochain je n'y crois pas trop, et alors la migration 5 vers 6 je n'en parle même pas.
On n'en est pas encore à une version béta (la première est pour décembre 2015), pas trop étonnant que ce ne soit pas encore dans les distributions Linux standard. Mais il est facile d'installer Rakudo sur la plupart des distributions Linux, Windows et, sauf erreur, Mac.


En premier lieu ce qui frappe ce sont les énormes différences avec Perl 5, bien plus qu'avec les versions précédentes.
Ajouter la possibilité de nommer les paramètres de fonction, c'est légitime. Et de les typer, après tout pourquoi pas. Mais changer radicalement la signification des sigills, la syntaxe des expressions régulières, la majorité des opérateurs, le tout nouveau modèle objet, pourquoi, oui pourquoi?
Je me suis posé les mêmes questions et ai aussi espéré un temps que les différences soient minimes. Inutile de se voiler la face, ce n'est pas le cas, les différences sont effectivement importantes. Mes tutoriels déjà mis en ligne se concentrant précisément sur les différences entre Perl 5 et Perl 6, il ne font qu'apporter de l'eau à ton moulin: oui, c'est un langage différent, aucun doute là dessus, mais conservant l'esprit de Perl 5, aucun doute non plus. Au fur et à mesure que j'ai découvert ces changements, j'ai aussi compris dans une large mesure leurs justifications. Chacun des chapitres des trois premiers tutoriels, ou presque, comporte un sous-chapitre "Motivation" qui répond au moins en partie, j'espère, à ces questions.

Pour ne prendre qu'un exemple, celui des regex: tu ne peux imaginer ce que la nouvelle syntaxe des regex apporte en puissance expressive supplémentaire tant que tu n'as pas essayé d'utiliser vraiment les regex de Perl 6 et d'écrire toi-même, en moins de 50 lignes de code, une grammaire complète permettant de parser un document JSON quelconque.

Pour un peu j'ai l'impression qu'il y a autant de différences entre Perl 5 et 6 qu'entre Perl 5 et PhP. Et aussi autant de fausses ressemblances, de nature à induire en erreur: en cherchant bien je suis certain qu'il est possible d'écrire un programme qui fonctionne aussi bien en Perl 5 qu'en Perl 6 mais qui donne un résultat totalement différent.
C'est un langage différent, je l'ai déjà dit, mais de là à voir plus de différences entre Perl 5 et Perl 6 qu'entre Perl 5 et PHP, je ne peux pas te suivre sur ce terrain-là. (Si encore tu avais choisi Ruby pour ta comparaison, on pourrait peut-être vaguement en discuter superficiellement, après tout Ruby a de vraies ressemblances avec Perl, mais comparer un langage généraliste comme Perl, 5 ou 6, à un langage spécialisé Web comme PHP, vraiment pas.) Mais, en profondeur, même la comparaison avec Ruby ne tient pas du tour la route. Je t'assure, pour l'avoir pratiqué depuis un an et demi, que Perl 6 est dans l'esprit de Perl 5, mais je dirais en mieux. (Bien sûr, dans la vraie vie professionnelle, je ne fais que du Perl 5, Perl 6 n'est qu'un hobby pour moi pour l'instant. J'ai hâte que cela change.)

Et pourtant le langage ne change pas de nom, juste de numéro. Ce qui risque de poser de gros problèmes pour les nouveaux arrivants, qui pourront croire que la version 5 est obsolète alors même que c'est elle qui est présente sur la majorité des ordinateurs.
Oui, le nom de langage est un débat récurrent et fondé, ces discussions ont eu lieu, il y a des raisons historiques bonnes ou mauvaises, mais c'est sans doute trop tard pour changer maintenant.

Et puis faire démarrer les codeurs débutants avec Perl, même la version 6, je ne vois pas trop l'intérêt. A part peut-être le fort typage qui peut inciter à faire du code propre, sachant que contrairement à Java il ne le rend pas obligatoire pour autant.
Pas d'accord. Si j'étais prof d'université, je serais très tenté de choisir Perl 6 comme support de mes cours, ne serait-ce que parce Perl 6 permet d'aborder avec un seul langage différents types et modèles de programmation: impérative procédurale classique, objet et fonctionnelle (et même programmation logique, programmation par contraintes, par pipe-line de données, par "reconnaissance-action", etc.).


Un des rares reproches que je pouvais faire à Perl 5 était l'absence d'une spécification, empêchant par là même l'existence d'implémentations alternatives ou le multi-plateforme, comme on peut le voir en Python et en Ruby qui ont des implémentations en Java et en .NET (et même en Javascript). Alors quand j'ai lu que la version 6 de Perl allait changer ça, je ne pouvais qu'applaudir.
Aujourd'hui je vois surtout une occasion manquée.
Franchement, je ne crois pas.

Rakudo peut utiliser une JVM, mais l'inverse n'est pas vrai. Du coup impossible de l'utiliser pour écrire un script qui fonctionne aussi bien en local qu'intégré dans un programme Java déjà existant : j'ai eu à le faire récemment et alors, pas d'autre choix que d'utiliser Ruby, sauf que ce langage est inconnu de mes collègues.
Heureusement je viens de découvrir Perlito (dont j'avais vaguement entendu parler en même temps que Perl 6 mais dont je ne soupçonnais pas la liste des langages supportés en backend), la prochaine fois que j'ai la même problématique j'essaierai de l'utiliser pour lancer depuis java des scripts traduits en JavaScript... mais probablement depuis Perl 5.
Là, tu parles de l'implémentation actuelle (Rakudo sur MoarVM ou JVM), rien à voir avec le langage lui-même. Comme l'a dit en substance Larry Wall lors de la conférence à l'origine de ce post (je paraphrase, je n'ai plus la citation exacte), "Faire de Perl 6 LE langage de la semaine ne m'intéresse pas, nous voulions un langage des 30 ou 40 prochaines années." Impossible de dire si cet objectif se réalisera ou non, mais les détails de l'implémentation 2015 ou même 2016 ne sont guère pertinents dans cette perspective.

Je ne sais même pas si je souhaite vraiment que Perl 6 devienne le langage des 30 ou 40 prochaines années (dans le sens que peut-être quelqu'un inventera quelque chose de vraiment mieux bien avant l'expiration de cette période), mais je peux dire que je pense sincèrement que, vu d'aujourd'hui, il en a réellement le potentiel.

Bon, j'ai essayé de répondre point par point à ton post, mais il ne faut en aucun y voir une animosité contre ton point de vue.
1  0 
Avatar de Lolo78
Rédacteur/Modérateur https://www.developpez.com
Le 09/10/2015 à 14:52
Il s'agit pour l'instant plutôt d'une pré-release de Perl 6. La sortie d'une version béta stable est prévue pour la fin de l'année ("avant Noël".

Mais il est déjà possible depuis pas mal de temps d'installer très simplement les versions actuelles de Rakudo Star / Perl 6 (Windows, Linux, etc.) et d'expérimenter avec elles. Certaines personnes l'utilisent même déjà en production (mais sans doute pas, j'imagine, pour des applications qui sont "mission-critical".

Personnellement, j'utilise Perl 5 pour mes applications réelles (boulot ou autre), mais je m'amuse vraiment beaucoup à explorer les vastes possibilités de Perl 6. Certaines sont réellement extraordinaires. J'ai hâte de pouvoir passer réellement à Perl 6.

Voir les tutoriels dans ma ligne de signature si cela vous intéresse (d'autres sont en cours de rédaction ou en projet).
0  0 
Avatar de hotcryx
Membre extrêmement actif https://www.developpez.com
Le 09/10/2015 à 17:28
Bon bin je vais devoir m'y coller ayant débuté Perl 5 cette année.
Après plusieurs scripts persos: un minimizer maison (js, html, css), un convertisseur de fichier, un chercheur d'occurences dans un gros fichier, un site hosté très light et professionnellement: 2 applications CGI (avec jquery, bootstrap, ajax) pour le monitoring de serveurs et une petite application d'affichage de stocks Repair, je peux dire que j'aime bien PERL et que c'est rapide
Rem: je viens du monde .NET.
Mon avis: ce n'est pas le plus facile des langages pour débuter (si on n'a pas de prof) et que l'on veut faire du bon boulot mais c'est très puissant, il y a beaucoup de livres, de docs, de librairies.
On a l'impression de voir les choses d'une autres manières avec ce langage lol.

Je suis très curieux de voir le potentiel du PERL 6
0  0 
Avatar de air-dex
Membre expert https://www.developpez.com
Le 12/10/2015 à 2:11
Citation Envoyé par Victor Vincent Voir le message
Après tant d’effort et une si longue période de développement, Larry espère que Perl 6 ne sera pas que le langage d’une semaine pour ainsi dire et que le langage continuera à exister. Que Perl puisse être en mesure de rivaliser Python pour être adopté par les jeunes codeurs débutant n’est pas gagné d’avance mais a en croire certains participant à l’événement, il est susceptible d’avoir un public enthousiaste.
Un développeur estime que Ruby on Rails est dépassé, et encore c'est un enfant de coeur à côté de Perl. Je ne pense pas que Perl 6 arrive à se faire une place aux côtés de Python 3 et de PHP 7 (pour le Web).
0  0 
Avatar de disedorgue
Expert éminent https://www.developpez.com
Le 12/10/2015 à 12:25
Bonjour,

Il est vrai que perl est en perte de vitesse, mais en mon sens, il se destine à évoluer vers d'autres domaines comme par exemple:

-Administration système (remplace par exemple facillement sed et awk pour des performance similaire voir mieux).
-Scientifique (comme bio perl mais en concurrence directe avec python).

Même s'il a connu son heure de gloire coté cgi, il n'est pas comparable à php, il ne sont pas destiné à faire les mêmes choses.
0  0 
Avatar de djibril
Responsable Perl et Outils https://www.developpez.com
Le 12/10/2015 à 12:38
Perl fait déjà et fera beaucoup de choses.
Dans l'administration système, il est incontournable. Désinstalllez Perl sur un système Linux et on en reparle .
Il ne fait pas que du Web cgi , heureusement, mais il le fait également bien. Regardez la vidéo des journées Perl 2015 sur le le site booking fait en Perl ()
Perl est un langage très performant qui a le seul inconvénient d'être utilisé du coté obscure. On l'utilise sans jamais en parler et il n'est jamais mis en avant :-) !
0  0 
Avatar de disedorgue
Expert éminent https://www.developpez.com
Le 12/10/2015 à 14:16
C'est tout à fait ce que je pense, à un détail près, c'est pas une utilisation du coté obscure, c'est plus une utilisation intimiste: on l'utilise sans jamais en parler car cela coule souvent de source.
Professionnellement, il m'arrive de faire du perl, car contrairement à des langages comme ruby, python, et autre php, il est déjà présent sur les machines et que par exemple, une regex faite sur un linux fonctionnera aussi sur un AIX contrairement à une regex faite pour un sed linux.

Après, on aura beau me dire qu'il suffit de les installer, pour ma part, c'est déjà de trop.

Bon, après se bref hors-sujet, je n'ai pas encore regardé en détail les différences entre perl 5 et perl 6, mais ce que je lis ici, laisse présager que la version 6 ne sera pas capable de faire tourner un script version 5 en l'état et donc, il va vraiment falloir trouver un gros intérêt à passer sur cette version 6 (en dehors des nouveau projets avec nouveaux serveurs, etc...).
0  0 
Avatar de Philou67430
Expert confirmé https://www.developpez.com
Le 12/10/2015 à 14:24
Je l'utilise énormément pour des programmes en analyse linguistique, domaine où il me semble également exceller.
0  0