Bonsoir,
j'ai fais un petit tour sur les informations a propos de ce merveilleux langage de script, apparemment le projet Perl 6 - perl 6 va bientôt arriver à maturité et tant mieux.
C'était une petite news pour les fan de ce langage.

Pour ceux qui ne connaisse pas:
Perl 6 - perl 6 est une refonte totale du langage de programmation Perl.
Le langage est complexe mais il est toujours possible de programmer dans un sous-ensemble restreint du langage. Il inclut beaucoup de fonctionnalités qui, pour d'autres langages, appartiennent généralement à des bibliothèques logicielles. Ainsi le système d'expressions rationnelles a été entièrement refondu et constitue aussi un moteur d'analyse syntaxique puissant et rapide grâce à un contrôle très fin du retour sur trace.
Il est complètement intégré au système objet.
La programmation orientée prototype et la programmation orientée objet sont toutes deux possibles car le programmeur peut modifier le comportement par défaut des métaclasses et du mécanisme de dispatch vers les méthodes et multiméthodes.
Les concepteurs de Perl 6 ont apporté un soin tout particulier à la syntaxe du langage qui avait été notablement alourdie en Perl 5 - perl 5 avec l'ajout du support des références. Les principes directeurs dans la conception du langage sont : le principe de Huffman, la lisibilité, l'extensibilité. Chaque aspect du langage est hautement paramétrable via des constructions lexicales ou syntaxiques appelés adverbes ou modificateurs. Certains opérateurs sont des caractères Unicode mais souvent un alias plus verbeux en ASCII est disponible. L'interopérabilité avec les bibliothèques d'autres langages dynamiques de haut niveau est un but à terme grâce à la mise en œuvre de ces langages par le même moteur (Pugs ou Parrot).
Perl 6 devrait être un langage rapide car, outre le typage statique, le support de la parallélisation, ses implantations supportent la compilation à la volée en code natif.
source: wikipedia
Je ne voudrais pas modérer ton enthousiasme, mais cela fait longtemps que les informations sur perl6 circulent, mais que les dates de libération reculent.
Il faut dire que le projet n'a pas cessé de grossir par rapport au projet initial.

Le passage de perl4 à perl5 était une grosse évolution (je connais certains clients qui utilisent encore perl4 ! ! !) .
Mais le passage de perl5 à perl6 sera une REVOLUTION.

Pour l'instant pugs semble stable et parrot est opérationnel en 0.8.2, mais il faut prévoir des mises à jour fréquentes (quotidiennes?) .
Parrot 1.0 devrait sortir en mars 2009 et devrait marquer le début d'une certaine stabilité.
Rakudo est pratiquement opérationnel (mais quelques fonctionnalités ne passent pas encore).
Pugs est stable (juin 2006)

En ce moment j'utilise surtout parrot+rakudo (et de moins en moins pugs).
Mais pour raduko/parrot il faut prévoir des compilations manuelles à partir des sources (les paquets rpm préparés pour fedora F9, n'ont jamais fonctionné).
Et de toute façon il faut suivre les mises à jour (que les mainteneurs de rpm ne peuvent pas suivre).
Et l'on peut constater qu'au cours des dernières semaines, de plus en plus de tests réussissent .
C'est passionnant de suivre cette progression au quotidien, mais il faut absolument s'abonner au mailing-list.

Exemple flagrant de progression entre perl5 et perl6 :
#!/usr/bin/perl
print "Bonjour\n" ;


#!/usr/bin/perl6
say "Bonjour" ;
vivement perl 6.
je sais programmer en perl python tcl (pour les langages de script) et mon préféré c'est perl. Perl 6 sera t'il plus performant au niveau exécution de code car python la dernière version semblait un poil plus rapide pour une même tâche
Dans la mailing list ruby-fr, il avait été annoncé que ruby2 sera compatible perl6. C'était surement une blague... damage. :roll:
Oui j'avais aussi lu quelques infos sur Perl6 mais pas trop de date de release stable (me tromps-je ?).

Par contre, les révolutions dans les langages c'est moyennement bien, parce que ça oblige à refaire tout ou partie des outils que l'on a pu ou dû développer. Là je suis déjà en train de me prendre les pattes avec python 3 alors si perl6 s'invite au festival, je sens que je vais beaucoup moins dormir ...
@hugsy_75
Tout dépend du soin apporté à la compatibilité ascendante apportée aux évolutions.
Avec pugs+perl6, dans une période transitoire, on pourra utiliser des blocs perl5 dans un programme/module perl6, le temps de tout adapter.
De plus, depuis perl 5.10 on peut utiliser certaines structures/instructions de perl6, histoire de se faire la main (et de patienter ...)
Effectivement, c'est ce que j'avais cru comprendre, mais à titre de comparaison il y a aussi un module python '2to3' qui a pour but de transcrire du langage du 2 vers du 3.

Ca marche bien quand ton script ne fait que 'print "Hello World"' mais au delà, ça devient un peu moins propre ...
pmarion wrote:De plus, depuis perl 5.10 on peut utiliser certaines structures/instructions de perl6, histoire de se faire la main (et de patienter ...)
En revanche, je ne savais pas cela. Je vais l'examiner un peu en attendant
YARV is YARV
Ruby is Ruby
Ruby IS NOT YARV 🙂
un mois plus tard
Parrot 1.0 will be out in March 2009!
bien que c'est de l'anglais vous comprendrez. tout cela laisse penser que perl 6 sera pleinement utilisable pour mars/avril :-D
Sur le papier les avancé ont l'air énorme est dépasse (pour ce que j'ai vu) python, ruby et tcl reste a voir ça concrètement ainsi que des bench pour la rapidité de ce langage.
en tout cas, intéressant 🙂
Une introduction à Perl6
http://www.szabgab.com/perl6.html

Effectivement, ça donne un sacré coup de vieux à Perl5.
Enfin, faut distinguer Parrot de Perl6, Parrot c'est une VM comme l'est Mono ou la JVM, on peut très bien implémenter d'autres langages par dessus ou implémenter Perl6 sans Parrot.
je suis tout a fait d'accord avec toi, mes je pense que tant que parrot ne soit pas stable les distributions linux ne le mettrons pas à la place de perl5 .
J'ai hate
si quelqu'un a fait des test sur perl 6 et pourrait lancer un petit benchmark et avec le même algo le faire sur python 3000 ça serait top
Oui je crois au père noël... :-D
si quelqu'un a fait des test sur perl 6 et pourrait lancer un petit benchmark
J'utilise (ou plutôt j'essaie d'utiliser) perl6 depuis plus d'un an, et pour l'instant parrot et pugs (je n'ai essayé que ces deux là) sont compilés avec des options de déboguage (comme les alpha, bêta de certaines distribution), et cela nuit aux benchmark d'occupation mémoire et de vitesse.

La performance est un faux problème si l'on examine les mauvais habitudes de programmation.

Je fais de l'assistance perl5 sur les mailing-list de perl 5 depuis longtemps, et je suis souvent effaré de voir les mauvaise performances liées à de la mauvaise programmation. Boucles mal conçues, absence chronique de «last», ou de «continue» (ne pas confondre avec le «continue» du «bash».... Mais je pense qu'avec tous les langages on doit trouver des erreurs de conception identiques.

Personnellement, ce sont les nouvelles structures, nouvelles instructions de base, typage des données souhaitable(mais non obligatoire), ..... qui m'intéressent.

C'est sûr que le typage des données devrait faire gagner du temps donc améliorera les performances (surtout en calculs mathématiques) mais rebutera les utilisateurs de Perl5 qui trouvaient que l'absence de typage obligatoire était pratique pour écrire vite des petits programmes de script.

En fait il y a autant de façons d'utiliser perl 5 qu'il n'y a d'utilisateurs.
Langage de script pour traiter des chaines de caractères contenues dans des fichiers (on va dire le but de tout débutant pour perl).
Programme de calcul statistiques avec production d'images (camemberts, histogrammes, et toute ces sortes de choses, ...). Et cela bien plus facilement qu'avec un €xc€l de window$.
Interface Web/CGI
Script d'installation
Programmes système.
gestion réseau avec E/S socket et tcpdump? ...
j'en passe et des meilleures.

Quand on pense qu'il y a encore des sites qui utilisent perl4 car cela leur suffit . . . .