Un nouveau venu à Perl devrait-il apprendre à la fois Perl 5 et 6? [fermé]

21

J'ai commencé à jouer avec Perl 5 récemment, et cela semble très intéressant. J'aimerais passer un peu de temps à l'apprendre plus en profondeur quand je le peux.

Ma question, puisque Perl 6 se déroule lentement (je crois ...) et est censée rompre la compatibilité descendante, est la suivante: est-ce que je ferais mieux d'apprendre Perl 5 puis Perl 6, ou apprend Perl 6 directement un meilleur investissement en temps selon à toi?

Si les changements de Perl 5 à 6 compliquent la compréhension de Perl 5, je devrais certainement commencer par Perl 5 pour pouvoir lire les "anciens" scripts, puis vérifier Perl 6. Il y a aussi le "Perl 6 n'est pas encore complètement publié "problème. Je sais qu'il y a une implémentation précoce de Perl 6, mais si Perl 6 n'est pas officiellement publié avant quelques années, je m'en tiendrai à 5 pour l'instant.

J'aimerais certainement avoir un aperçu à ce sujet. N'hésitez pas à discuter de sujets connexes. Mon intérêt pour les langages de script est assez récent.

Merci!

Joanis
la source
3
Perl 6 n'a pas encore été publié. Si vous en avez besoin pour un "vrai travail", alors concentrez-vous sur Perl 5.
Aller avec les votes, après tout ce temps, mais de nombreuses réponses intéressantes IMO. J'aime que vous ayez apporté l'idée que Perl 5 et 6 devraient considérer des langues différentes. Merci!
Joanis

Réponses:

21

Perl 5 et Perl 6 sont des langues différentes, pas deux versions identiques. Perl 6 est fortement inspiré de Perl 5, mais pas exclusivement. Je suggère de me concentrer sur Perl 5 pour l'instant. Si vous regardez la communauté (je suggérerais l' agrégateur Planet Perl Iron Man , vous verrez également des publications et du contenu de la communauté Perl 6 et pourrez y garder un œil. De plus, de nombreuses fonctionnalités de Perl 6 reviennent lentement à Perl 5.

Aussi: Malgré la haine de certains pour Perl, nous sommes en 2010, et non plus en 1995, et Perl a énormément progressé et continue de le faire.

phaylon
la source
13

Oui à Perl 5

Bien sûr, allez apprendre Ruby et même Python, mais Perl est différent. Et intelligent au-delà de la raison. Perl est l'une de ces langues que vous pouvez apprendre des choses que vous n'avez jamais voulues et être heureux de l'avoir fait et pourtant vous devrez relire le livre Camel tous les deux ans juste pour ne pas purger complètement mentalement vos perlismes.

Perl est de syntaxe étrangère, même pour les professionnels les plus aguerris. Personnellement, je crois que vous élargirez vos horizons avec Perl.

Perl 5 est ce que je considère être Perl 1.5. Perl 6 est ce que je considère comme Perl 2.0, devrait peut-être même être nommé quelque chose de complètement différent, donc oui, 5 et 6 valent la peine d'être appris à part entière et pour leurs propres mérites. Disclaimer = Je suis toujours aux prises avec Perl6 moi-même ...

Jé Queue
la source
4

En réponse à la question dans le titre: oui!

Comme vous l'avez souligné, se concentrer sur Perl 5 n'est en aucun cas une perte de temps, car la grande majorité des exemples, tutoriels et applications en Perl proviendront de la branche 5.

Cela dit, vous devez certainement suivre le projet Perl 6 et ses progrès. J'ai pris un peu de temps pour apprendre Python 3 avant sa première version, juste pour comprendre les changements qui étaient apportés et pourquoi. Cela m'a aidé lors de la migration de la base de code 2.x vers 3.x.

Je n'investirais pas trop de temps pour apprendre les tenants et aboutissants de Perl 6; une compréhension approfondie de Perl 5 vous servira mieux pour le moment. Mais une fois qu'il est sorti (chaque fois que c'est sanglant), une compréhension de base de Perl 6 vous aidera à continuer à avancer.

bedwyr
la source
3

Perl 5 est la ligne stable, qui se développera probablement sur une ligne différente de Perl 6. Perl 6 devra probablement trouver un nouveau nom que Perl.

Perl 6 est franchement génial . Mais ce n'est pas encore assez stable pour une utilisation en production en entreprise (du moins, d'après ce que je comprends). Bien sûr, stable dans l'entreprise signifie Perl 5.8 selon mon expérience ...

Paul Nathan
la source
1

N'apprends pas Perl 6.

Le CPAN ne le prend même pas encore en charge. (Je soupçonne qu'il sera livré avec un module qui permet à Duke Nukem Forever d'être entièrement joué à l'aide de regexes ...)

Kevin Cantu
la source
Hehe ... vapourware ftw!
Simon Whitaker
1
Perl 6 n'utilise pas d'expressions régulières, il utilise des règles (et elles sont géniales!): En.wikipedia.org/wiki/Perl_6_rules
Gaurav
Nouvelle blague nécessaire.
Sean McMillan
@SeanMcMillan Une blague que j'ai faite l'année dernière est vieille? : P (je ne peux pas m'en empêcher si Duke Nukem Forever est sorti à ce moment-là ...)
Kevin Cantu
1

Perl 5 est stable maintenant et je pense qu'il faut d'abord apprendre la version stable la plus récente. La mise à niveau vers une autre version deviendrait alors plus facile.

Abi
la source
1

Meilleur conseil: non, non, non! Perl 5 est le meilleur en ce moment car Perl 6 n'est pas entièrement développé.

Dynamique
la source
0

Si vous êtes intéressé par les langages de style de script, je suggérerais plutôt d'apprendre Python et / ou Ruby. J'ai appris Perl il y a plusieurs années. La principale chose que j'en ai apprise, ce sont les expressions régulières. La plupart des autres langages qui ont construit des expressions régulières sont des dérivés de l'implémentation de Perl. Mais au-delà de cela, je n'ai pas utilisé Perl pour autant. La principale critique de Perl est que certains le considèrent comme un langage «en écriture seule». Il est très difficile de revenir à l'ancien code et de comprendre facilement ce qui a été fait.

J'ai l'impression que plus de progrès sont réalisés avec Python et Ruby (comme Rails) qu'avec Perl. Il est toujours bon d'étirer votre cerveau et d'apprendre une nouvelle langue, mais Perl ne serait probablement pas une excellente suggestion.

Erik
la source
1
En fait, javascript est le roi du script.
Daniel Little
Merci pour la contribution. Apparemment, Perl serait un choix pas si bon de nos jours. Mais juste curieux ... Est-il aussi facile d'écrire des lignes simples concises à l'invite du shell avec Python, Ruby et Javascript?
Joanis
3
Perl a beaucoup changé depuis les temps anciens. Et il y a beaucoup de gens qui optent encore pour cela et l'apprennent. Des choses comme les tests, la documentation, l'interopérabilité, la rétrocompatibilité, la stabilité et la concentration sur une bonne chaîne d'outils sont des attributs plus modernes de Perl.
phaylon
D'après mon expérience, l'apprentissage de Perl aide à l'apprentissage de Ruby, car de nombreux concepts sont partagés.
justkt
Perl regexps PEUT analyser HTML (ou quelque chose)