Précédent   Forum du club des développeurs et IT Pro > Autres langages > Perl > Langage
Langage Toutes vos questions sur les scripts Perl en général. Avant de poster, veuillez consulter les FAQs perl, les cours Perl, les critiques de livres et les sources Perl.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Actualité déjà publiée
 
Outils de la discussion
Publicité
'
Vieux 15/06/2006, 19h29   #21
Jedai
Expert Confirmé Sénior
 
Avatar de Jedai
 
Étudiant
Inscription : avril 2003
Messages : 6 068
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2003
Messages : 6 068
Points : 8 209
Points : 8 209
Envoyer un message via Yahoo à Jedai
Citation:
Envoyé par Woufeil
Mais quand tu dis du tout objet, comment ça va se passer pour les fonctions internes de Perl ? Elles vont être modifiées pour devenir des méthodes ou elles resteront des fonctions ?
Les fonctions internes deviendront des méthodes pour toutes celles qui sont directement rattachées à un type de donnée, sinon elles resteront des fonctions... Autrement dit, length( $string ) deviendra $string.chars (ou $string.bytes selon que vous vouliez la longueur en terme de caractères UTF8 ou de nombre d'octets). Pour tous les détails (encore que tout ne soit pas fixé jusqu'à la sortie de la 6.0.0), on peut consulter ce document (le synopsis 29)

--
Jedaï
Jedai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 11h51   #22
pospos
Membre éprouvé
 
Inscription : juin 2006
Messages : 427
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 427
Points : 421
Points : 421
et on pourra toujours utiliser les fonctions normales (length, etc...)
on pourra faire les deux

en fait cette approche existait deja -un peu- en perl 5 avec le module autobox (qui a failli faire partie de perl 5.10)
pospos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 13h15   #23
Arioch
Membre émérite
 
Inscription : février 2003
Messages : 1 116
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 1 116
Points : 980
Points : 980
J'avoue que Perl 6 me file les chocottes et que je ne suis pas, mais alors pas du tout pressé de le voir imposé sur l'une de mes futures distribs GNU/Linux

J'ai passé 3 longues années à écrire un ensemble de scripts Perl v5 pour un jeu. L'ensemble fait facilement dans les 40.000 lignes de code.

Sérieusement, je ne me vois pas réécrire le tout pour passer à Perl 6 !

Alors, j'espère (au choix) :

- que le programme de conversion Perl 5 ---> Perl 6 couvrira l'ensemble des syntaxes proposées par Perl 5 sans qu'on ai besoin de regarder chaque ligne de code.

- qu'une version Perl 5 sera toujours disponible sur le web et qui puisse cohabiter avec Perl 6 sur le même OS, au cas où la conversion serait pénible.
Arioch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 13h39   #24
Mr6
Membre chevronné
 
Homme
Inscription : septembre 2004
Messages : 601
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Secteur : Service public

Informations forums :
Inscription : septembre 2004
Messages : 601
Points : 719
Points : 719
une "compatibilité" semble prévue puisque tu pourras appeler les modules perl5 (ex : use p5_monmodule) il me semble Après le mieux serait effectivement de pouvoir faire tourner perl5 et perl6 cote à cote ! Espérons
Mr6 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 13h41   #25
Arioch
Membre émérite
 
Inscription : février 2003
Messages : 1 116
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 1 116
Points : 980
Points : 980
Citation:
Envoyé par Mr6
une "compatibilité" semble prévue puisque tu pourras appeler les modules perl5 (ex : use p5_monmodule) il me semble Après le mieux serait effectivement de pouvoir faire tourner perl5 et perl6 cote à cote ! Espérons

J'espère sincèrement n'avoir rien à toucher à mes programmes ! Je m'étais presque dit à l'époque où je me suis lancé dans la conception du jeu qu'il serait sage de l'écrire en C ou C++ et j'ai finalement choisi Perl pour sa grande souplesse. J'espère avoir fait le bon choix !
Arioch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 13h44   #26
Mr6
Membre chevronné
 
Homme
Inscription : septembre 2004
Messages : 601
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Secteur : Service public

Informations forums :
Inscription : septembre 2004
Messages : 601
Points : 719
Points : 719
je ne veux pas dévier le sujet mais pour un jeu, le C/C++ me semble tjrs être le mieux, pour pouvoir faire de l'optimisation ca semble logique bon, à côté de ca, ca dépend aussi du style de jeu
Mr6 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 13h45   #27
Arioch
Membre émérite
 
Inscription : février 2003
Messages : 1 116
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 1 116
Points : 980
Points : 980
Citation:
Envoyé par Mr6
je ne veux pas dévier le sujet mais pour un jeu, le C/C++ me semble tjrs être le mieux, pour pouvoir faire de l'optimisation ca semble logique bon, à côté de ca, ca dépend aussi du style de jeu
[MODE_HORS_SUJET=ON]
mon jeu n'a rien de graphique, c'est du textuel
[MODE_HORS_SUJET=OFF]

Désolé d'avoir dévié du sujet initial
Arioch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 14h20   #28
pospos
Membre éprouvé
 
Inscription : juin 2006
Messages : 427
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 427
Points : 421
Points : 421
ne 'tinquiete pas pour tes script perl 5.
D'une part le perl actuel continura a etre maintenu un bon moment (on trouve encore une installe de perl 1 sur les repository de dev.perl.org), et CPAN restera ne place. Ensuite il y aura une version de perl 5 pour Parrot (Ponie), et on pourra utiliser perl 5 et perl 6 dans une meme application.
C'est d'ailleurs deja le cas avec pugs: on peu faire un use d'un module perl 5 et l'utiliser tel quel. C'est un objectif qu'ils ne vont pas laisser de coté cat ils considerent CPAN comme la plus grande richesse de perl.
pospos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 14h21   #29
pospos
Membre éprouvé
 
Inscription : juin 2006
Messages : 427
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 427
Points : 421
Points : 421
Citation:
Envoyé par Mr6
je ne veux pas dévier le sujet mais pour un jeu, le C/C++ me semble tjrs être le mieux, pour pouvoir faire de l'optimisation ca semble logique bon, à côté de ca, ca dépend aussi du style de jeu
SDL a de tres bon bindings en perl
pospos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 18h11   #30
Jedai
Expert Confirmé Sénior
 
Avatar de Jedai
 
Étudiant
Inscription : avril 2003
Messages : 6 068
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2003
Messages : 6 068
Points : 8 209
Points : 8 209
Envoyer un message via Yahoo à Jedai
Citation:
Envoyé par pospos
ne 'tinquiete pas pour tes script perl 5.
D'une part le perl actuel continura a etre maintenu un bon moment (on trouve encore une installe de perl 1 sur les repository de dev.perl.org), et CPAN restera ne place. Ensuite il y aura une version de perl 5 pour Parrot (Ponie), et on pourra utiliser perl 5 et perl 6 dans une meme application.
C'est d'ailleurs deja le cas avec pugs: on peu faire un use d'un module perl 5 et l'utiliser tel quel. C'est un objectif qu'ils ne vont pas laisser de coté cat ils considerent CPAN comme la plus grande richesse de perl.
Je rajouterai que l'interpréteur de Perl6 assumera par défaut que tu lui donnes du Perl5. Il faut lui signaler que tu es en version 6 pour qu'il passe en mode Perl6 :
Passera en mode Perl6
Passera en mode Perl6 strict (à peu près les mêmes effets qu'un "use strict; use warnings;" actuel).

Donc pas de soucis, tes scripts Perl5 passeront dans le nouvel interpréteur sans aucune modifications (ça fait partie des points importants pour énormément de monde, donc aucun risque de changement d'avis).

--
Jedaï
Jedai est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2006, 20h51   #31
Arioch
Membre émérite
 
Inscription : février 2003
Messages : 1 116
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 1 116
Points : 980
Points : 980
Citation:
Envoyé par Jedai
Donc pas de soucis, tes scripts Perl5 passeront dans le nouvel interpréteur sans aucune modifications (ça fait partie des points importants pour énormément de monde, donc aucun risque de changement d'avis).
Arioch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/06/2006, 19h59   #32
Gnux
Membre Expert
 
Avatar de Gnux
 
Inscription : juillet 2003
Messages : 2 066
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 2 066
Points : 2 121
Points : 2 121
Citation:
Envoyé par Woufeil
Je pense qu'il est trop tôt pour savoir ça, mais je me demande comment la transition Perl 5 -> Perl 6 va être faite...

Franchement, après lecture de quelques synopsis, j'en arrive à la conclusion suivante : un bon programme perl 5 sera un mauvais programme perl 6 (ou du moins un programme perl 6 non optimisé)...
Je suppose qu'il y aura des guides pour passer de Perl 5 à 6, mais je me demande si ça sera vraiment suffisant tellement les changements ont l'air radicaux. J'aimerais bien que l'équivalent de Programming Perl pour Perl 6 sorte le plus rapidement possible, sinon on va vite être perdu.

Bon, je vais aussi poser une question dont j'ai presque déjà la réponse, mais je pense qu'elle est tout de même intéréssante : Où perl 5 en sera-t-il par rapport à "l'orientéisme" objet ?
Je suis bien d'accord avec cette analyse. En fait je me demande s'il ne va pas falloir tout réapprendre...
Vous avez des nouvelles sur la sortie? Sera t'elle accompagnée de tutoriels et autres? Genre: 'Passer de Perl5 à Perl6 à l'usage des vieux chameaux' signé Larry Wall ?
Gnux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 13h38   #33
pospos
Membre éprouvé
 
Inscription : juin 2006
Messages : 427
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 427
Points : 421
Points : 421
effectivement il y aura bcp de concepts nouveaux (pour un programmeur perl ou C), mais qu'on ne sera pas obligé d'utiliser.

C'est un peu comme passer du C à perl 5: on arrive à faire ce que l'on veut mais on ignore qu'il y a bcp plus simple et efficace.

En gros on sera tres rapidement opérationnel en perl 6, et des le depart on pourra tirer partie de bon nombre de ses avancées (typage optionnel, arguments nommés dans les sub, etc...) mais il faudra un peu creuser pour utiliser les autres (multi dispatch des methodes, roles, etc...)

En fait je vois un peu perl 6 comme un croisement entre les grands langages fonctionnels genre haskell ou lisp, venant du monde universitaire, et les languages genre C ou perl 5 venant de l'industrie.
Si perl 6 arrive à faire passer ce genre de concepts du monde universitaire au monde industriel alors ca sera un grand pas !
pospos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/07/2006, 05h18   #34
pospos
Membre éprouvé
 
Inscription : juin 2006
Messages : 427
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 427
Points : 421
Points : 421
Jedai++
pospos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/08/2006, 05h09   #35
GnuVince
Membre chevronné
 
Avatar de GnuVince
 
Développeur informatique
Inscription : avril 2004
Messages : 679
Détails du profil
Informations personnelles :
Localisation : Canada

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : avril 2004
Messages : 679
Points : 765
Points : 765
Attention: message long

Bonjour à tous,

je suis un nouveau dans le monde de Perl; j'ai appris Ruby en 2001, Python en 2002 et je considérais que ces deux langages ensemble me donnaient tout ce que je voulais en terme de "scripting". Et pendant longtemps ce fut le cas. Récemment, j'ai eu un compte shell sur une machine OpenBSD et mes amis qui l'administrent ne veulent pas installer de choses inutiles, car l'espace disque est assez restreint. Ça veut dire, pas de Ruby ou de Python. Par contre, j'avais besoin de quelques scripts:

* Un script pour créer un fil RSS de mes webcomics préférés
* Un script pour analyser les fichiers logs de mon site sur cette machine et me dire combien de visiteurs uniques m'ont visité
* Un script pour aller chercher les commentaires sur un blog qui ne permet pas d'alertes email ou RSS sur les commentaires

Étant dépourvu de Ruby et Python, j'ai décidé, un peu à contre coeur, d'apprendre Perl pour pouvoir faire ces tâches. Je connaissais peu de choses de Perl: je savais que la syntaxe pouvait effrayer les programmeurs les plus hardis, il y avait un très bon système de modules (CPAN), etc. Étant également à la recherche d'un nouvel emploi, je me suis dit que je pouvais tuer deux oiseaux avec une seule pierre: ajouter Perl à mon CV et me permettre de scripter là où Perl est la seule option.

J'ai pris le livre de Randal Schwartz, Learning Perl, et en quelques journées j'en savais assez pour créer des scripts simples. Quelques explications sur les références ainsi qu'un bref tutoriel sur CPAN et j'étais en voiture! Et jusqu'à présent (j'ai appris Perl il y a 4 semaines), je suis très satisfait du langage. C'est sûr que certaines constructions syntactiques font peur, mais en général le code que j'écris est assez propre.

Maintenant, pour Perl 6. J'ai très hâte. Perl 5 est un bon langage, par contre je crois que Perl 6, s'il est bien reçu par les actuels programmeurs de Perl 5 et adoptés par des programmeurs d'autres langage, a ce qu'il faut pour devenir un langage important. Le modèle objet de Perl 5 est assez... laid, par contre celui de Perl 6 est élégant et rappelle Ruby et Smalltalk. Le typage optionnel sera aussi un atout important: les programmes simples vont pouvoir le rester en ne spécifiant pas explicitement quels types utiliser et les programmes plus long et complexes vont pouvoir bénéficier d'une vérification supplémentaire à la compilation (note: ce n'est pas parce qu'un programme compile qu'il fonctionne: continuez à tester!). Les sigils vont rester les mêmes peu importe l'opération (@foo[1] plutôt que $foo[1]) et ça risque d'éviter des bogues pour les débutants. L'évaluation paresseuse est aussi très attirante. Pour ceux qui ne connaissent pas ce principe, voici un exemple:

Code :
1
2
3
 
@liste_infinie = 0..Inf;
$cinq = @liste_infinie[5];
Dans un langage comme Java, les expressions sont calculées en entier au moment de leur initialisation. Donc, le programme précédent planterait en Java, car le compilateur ne finirait jamais de remplir @liste_infinite. Par contre, avec une évaluation paresseuse, Perl6 va attendre pour calculer la liste jusqu'à ce qu'il en aie besoin. À la ligne suivante, on demande le 6e élément de la liste, et Perl va calculer jusque là. C'est le même principe qu'un stream.

La fonction say() va automatiquement ajouter le \n à la chaîne de caractères! Enfin! Les parenthèses seront optionelles autour dans un contrôle d'exécution (if, while, for, etc.), moins de pitonnage.

Je devrais sans doute lire le synopsis sur les expréssions régulières, car je ne comprends pas vraiment ce qui va changer et ce qui va devenir si puissant.

Perl 6 va être un langage très intéressant, il n'y a aucun doute là dessus. Espérons que des livres (Camel, llama, ram) auront de nouvelles éditions pour Perl 6 à son lancement ou peu après pour accélérer la transition.

Bonne journée!
GnuVince est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/08/2006, 17h34   #36
etranger
Membre confirmé
 
Avatar de etranger
 
Inscription : septembre 2004
Messages : 333
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 333
Points : 204
Points : 204
Quelque chose de nouveau est il prevu au niveau de l'interface graphique (un Tk amelioré, GTK+ ou autre toolkit integré par défaut) ?
etranger est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2006, 05h51   #37
GnuVince
Membre chevronné
 
Avatar de GnuVince
 
Développeur informatique
Inscription : avril 2004
Messages : 679
Détails du profil
Informations personnelles :
Localisation : Canada

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : avril 2004
Messages : 679
Points : 765
Points : 765
Citation:
Envoyé par etranger
Quelque chose de nouveau est il prevu au niveau de l'interface graphique (un Tk amelioré, GTK+ ou autre toolkit integré par défaut) ?
L'interface graphique tombe dans le monde des librairies plutôt que du langage de programmation comme tel. J'imagine que Tk sera encore là, même chose pour GTK+, wxPerl, etc.
GnuVince est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/08/2006, 22h37   #38
etranger
Membre confirmé
 
Avatar de etranger
 
Inscription : septembre 2004
Messages : 333
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 333
Points : 204
Points : 204
Effectivement.

Mais je me demandait si les concepteur de la machine virtuel Parrot ne pourait pas par exemple joindre une librairie graphique prè-installée, tel que wxwWidget, avec differents "binding" (<-- c'est comme ca que sa s'écrit ?), un pour Perl, un pour python, un pour ruby, etc....

Sa pérmetterait d'avoir qu'un seul binaire a installer (la lib Wx pour windows par exemple), mais qui pourait etre utilisé facilement par differents langages.

Le fait que swing soit installé par défaut avec la machine virtuel de Sun encourage les developpeur à l'utilisé et facilite la distrubution des applications.

Mai bon c'est plus un question liée à la distribution de perl qu'au langage lui même.
etranger est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2006, 22h16   #39
Woufeil
Rédacteur
 
Avatar de Woufeil
 
Étudiant
Inscription : février 2006
Messages : 1 076
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2006
Messages : 1 076
Points : 2 080
Points : 2 080
Citation:
Envoyé par etranger
Effectivement.

Mais je me demandait si les concepteur de la machine virtuel Parrot ne pourait pas par exemple joindre une librairie graphique prè-installée, tel que wxwWidget, avec differents "binding" (<-- c'est comme ca que sa s'écrit ?), un pour Perl, un pour python, un pour ruby, etc...
Si mes souvenirs sont bon, Tk est intégré dans la librairie de module de base pour Python et dans ActiveState (distribution de binaires de Perl la plus utilisée sous windows), donc je pense que ce sera plutôt Tk ou GTK qui sera privilégiée pour ne pas changer les bonnes vieilles habitudes !
__________________
"En essayant continuellement, on finit par réussir. Donc : plus ça rate, plus on a de chances que ça marche" (devise Shadock)
Application :

ainsi qu'à regarder la avant de poser une question.

La rubrique Perl recrute, contactez-moi.
Woufeil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/09/2006, 23h20   #40
scaleo
Membre actif
 
Avatar de scaleo
 
Inscription : septembre 2005
Messages : 327
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 327
Points : 165
Points : 165
Je voudrais savoir quand est il du multithreading en perl 6 , les threads perl 5 pose de gros problème de consommation mémoire et CPU, sans compter de gros problème de réentrance etc... bref sa marche pas super bien
scaleo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Actualité déjà publiée
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 01h40.


 
 
 
 
Partenaires

Hébergement Web