Journées Perl 2004

Posté par  . Modéré par Nÿco.
Étiquettes :
0
4
mai
2004
Perl
Deux évènements Perl dans les mois à venir à la Cité des Sciences et de l'Industrie :
*Les journées Perl Les dimanche 6 et lundi 7 juin 2004 se tiendra une conférence francophone sur Perl organisée par l'association "Les Mongueurs de Perl".
*Les samedis du libre, Perl : Le samedi 15 mai 2004 de 14h à 18h aura lieu le Samedi du Libre à la Cité des Sciences et de l'Industrie.
Ce mois-ci, le sujet est : "Introduction à la programmation en Perl", par Sylvain Lhullier, auteur d'une série d'articles sur le sujet dans Linux-Magazine France.

NdM : merci aussi à Thierry Stoehr.
Les Journées Perl seront l'occasion de se rencontrer et parler de Perl en français. Y seront réunis des gens qui ont mené des projets en Perl, qui travaillent sur le langage lui-même, qui utilisent ce langage tous les jours et qui veulent en apprendre plus. Quelques-uns des meilleurs auteurs et développeurs Perl francophones seront présents pour discuter de leur travail, de leurs projets, pour les mettre aux niveaux de tous, débutants et confirmés.

Joignez-vous donc à nous à Paris pendant deux jours, les dimanche 6 et lundi 7 juin 2004, pour parler et entendre parler de Perl dans le cadre magnifique de la Cité des Sciences, dans le 19ème arrondissement de Paris.

Frais d'inscription à la conférence : 25 € (tarif réduit 15 €).

Les Mongueurs de Perl est une association française à but non lucratif, qui promeut l'utilisation de Perl et les groupes d'utilisateurs de Perl en France.

Les samedis du libre, Perl L'atelier abordera les points suivants (selon le temps) :

* Introduction et bibliographie
* Structures de données : scalaires, listes et tableaux, tables de hachage
* Structures de contrôles : tests, boucles, fonctions

Perl est un langage dont le développement a été initié par Larry Wall en 1987. C'est un langage interprété (avec une phase interne de pré-compilation). Sa syntaxe s'inspire très largement de celles de C, awk, sed et sh, ce qui rend son apprentissage très facile pour toute personne ayant un peu d'expérience avec ces outils.

Son utilisation touche divers domaines : traitement de fichiers texte, extraction d'informations, écriture de scripts d'administration-système, prototypage rapide d'applications, etc ...

Le langage en lui-même est très riche et puissant : listes, tables de hachage et expressions régulières en font partie intégrante. De plus, la très grande quantité de modules disponibles permet de développer rapidement des applications touchant à des domaines très variés tels que :

* les réseaux (NNTP, SMTP ...) dont le web (mod_perl, CGI ...)
* les bases de données
* les interfaces graphiques (Tk)
* la cryptographie
* etc

Aller plus loin

  • # A la cité des sciences ?

    Posté par  (site web personnel) . Évalué à -2.

    Eh oui on ne présente plus ce vieux classique. Le musée de l'Homme aurait été plus approprié non ?!?
  • # Pourquoi ?

    Posté par  (site web personnel) . Évalué à 2.

    Ce n'est absolument pas pour déclencher une guerre.. Mais qu'est ce qui pousse les gens à utiliser perl ?
    à part pour faire des programmes illisibles ;) ( je plaisante )

    Non, sans rire, parmis tous les langages, pourquoi choisir celui ci ?

    http://about.me/straumat

    • [^] # Re: Pourquoi ?

      Posté par  . Évalué à 3.

      Ben je sais pas ....
      Peut-etre que quand on est tombé dedans quand était petit ...
      Clairement, pour moi à l'origine, ce qui m'interessait, c'était d'avoir le même outil pour mes scripts d'administration, et mes CGI pour les applis Web ....
      Et surtout la gestion des regexp :
      vive les $machin=~s/truc/bidule/g; :-=
    • [^] # Re: Pourquoi ?

      Posté par  . Évalué à 1.

      Pourquoi je préfère le C au C++ ou au Java ?
      Pourquoi Python plutôt que Ruby ?
      Pourquoi des applications distribuées développées en Java plutôt qu'en Erlang ?

      Pourquoi l'être humain est-il si con (des fois) ?

      Sans doute parce que ça fait la beauté du monde =)
    • [^] # Re: Pourquoi ?

      Posté par  . Évalué à 3.

      Bonne question :)
      La philosophie de perl, c'est de rendre simple les choses compliqués tout en gardant simple les choses simples.
      Par exemple, la gestion des chaines de caractères est très instinctive:
      si $mon_texte = "42" je peux sans probleme faire $mon_texte *= 2 ce qui me donnera 84 alors que $mon_texte est une chaine de caracteres.
      Ce n'est qu'un exemple, mais tout le reste ce fais avec la meme facilité.
      Sans oublier les expressions régulières du perl qui permettent pas mal de délires.

      Par dessus ça, viennent les modules (voir http://cpan.org(...)) dont les domaines d'application sont diverses et variés: CGI, ftp, XML, GTK, SQL, ...

      Bref, perl, c'est que du bonheur ;)
      • [^] # Re: Pourquoi ?

        Posté par  . Évalué à 4.

        rendre possible les choses compliqués tout en gardant simple les choses simples
    • [^] # Re: Pourquoi ?

      Posté par  . Évalué à 1.

      trop gros, passera pas.
    • [^] # Re: Pourquoi ?

      Posté par  (site web personnel) . Évalué à 2.

      There Is More Than One Way To Do It:
      pour arriver au même résultat, chacun choisit sa solution (ce qui fait que ça peut vire devenir inrelisible par quelqu'un d'autre, mais ça fait partie du charme...)

      exemple:

      if (condition) truc

      truc if (condition)

      truc unless (condition_contraire)

      font la même chose

      Que du bonheur.
      Pour s'en assurer, voir le concours $A++, où le but est d'incrémenter une variable de pleins de façons différentes. J'aime particulièrement le coup du rayon cosmique.
      http://paris.mongueurs.net/aplusplus.html(...)
      • [^] # Re: Pourquoi ?

        Posté par  . Évalué à 3.

        OK, d'accord, si on va par là, on ne va nulle part.
        C'est clair, non ?

        Ce que je veux dire c'est que l'on peut écrire du Perl totalement illisible, mais qu'on n'y est pas non plus obligé.
        Qu'un concours de code obscur existe n'enlève rien à la force de ce langage à part entière.
        Et parmi les points forts, je retiendrai :
        1) Portabilité
        Il existe assez de modules qui permettent de s'affranchir des particularités de tel ou tel OS.
        On peut meme faire du Perl sous Win$ !
        Et meme écrire dans des fichiers ou lire depuis des fichiers Office ... c'est tout dire.

        2) De la "glue" aux applications client/Serveur, en passant par des applis Web, ou des interfaces graphiques
        On peut vraiment tout faire.

        3) Ce pourquoi il est fait au départ, c-a-d traiter des documents, et en générer.
        Pour les regexp, c'est royal !
        Evidemment, il faut s'y mettre.

        4) C'est quand meme un langage qui a été adopté par des acteurs majeurs du monde industriel.
        Je pense en particulier à IBM/Rational qui utilise/recommande ce langage pour la personnalisation de ses progiciels de Gestion de Conf , Gestion des Bugs ... etc ...

        5) Une communauté vivante, internationale, et un ensemble de module qui couvrent des besoins immenses.

        Bon, on en trouvera surement d'autre, il parait meme qu'un constructeur de Mobile veut utiliser Perl au lieu de Java pour la personnalisation de ses terminaux.
        OK, d'autre langages existent et font parfois aussi bien ou mieux, mais on peut penser que Perl est ajourd'hui le plus universel.
        Pour qu'un autre langage s'impose, il lui faudra amener quelque chose de vraiment nouveau (comme PhP dans le monde Web), en plus.
        Les puristes peuvent par exemple penser que le support objet n'est pas ce qu'il y a de plus canonique ...

        Bonne Continuation,
        J.L.P.
        • [^] # Re: Pourquoi ?

          Posté par  (site web personnel) . Évalué à 2.

          1) Portabilité
          Quasiment tous les langages l'offrent :)
          PHP, Java, Python...

          2) On peut tout faire
          A part avec PHP, on peut tout faire avec tous les langages ( phpgtk est pa terrible :( )

          3) regexp
          Tous les langages java, php et python le font

          4) IBM recommande java maintenant ;)

          5) C'est vrai mais les autres langages aussi

          Bref, pas d'avantages par rapport aux autres langages, juste une possibilité :)
          Ok, merci pour vos réponses !

          http://about.me/straumat

          • [^] # Re: Pourquoi ?

            Posté par  (site web personnel) . Évalué à 3.

            5) non perl a vraiment une base de module immense et incomparable.

            "La première sécurité est la liberté"

            • [^] # Re: Pourquoi ?

              Posté par  (site web personnel) . Évalué à 1.

              As tu regarder le nombre de fonctions existantes dans l'API Java ?
              Avec en plsu les extensions existantes, je ne crois pas que perl en ait plus.

              http://about.me/straumat

              • [^] # Re: Pourquoi ?

                Posté par  (site web personnel) . Évalué à 1.

                http://cpan.org/modules/01modules.index.html(...) y en a quand même un paquet !
                L'API Java est très vaste également, mais elle ne recouvre pas tout. Les deux ont des domaines d'excellence distincts, c'est tout (il n'y a qu'à regarder les protocoles réseau : Java fait beaucoup de choses que Perl ne fait pas, et inversement).
                • [^] # Re: Pourquoi ?

                  Posté par  (site web personnel) . Évalué à 1.

                  mmm ??? qu'est ce que Perl fait que java ne fait pas ????

                  http://about.me/straumat

                  • [^] # Re: Pourquoi ?

                    Posté par  (site web personnel) . Évalué à 1.

                    Ça n'est pas vraiment une question de faire ou ne pas faire, les deux doivent être capables de tout faire (éventuellement en leur ajoutant des biblio programmées en C ou en Assembleur pour les parties bouffeuses de CPU). C'est plus un problème d'utilisation naturelle ou pas : par exemple, pour faire un aspirateur de site web, qui modifie les pages, les tare, les envoie et les détare sur un serveur par ssh, le premier langage auquel je pense pour le faire, ça n'est pas Java ;)

                    Ah si tiens, une chose que Java ne sait pas faire : de vraies interfaces textes (pas seulement par l'utilisation de stdin/stdout/stderr). Un binding de curses, ça permettrait de faire des trucs sympatoches (mais bon, pour la portabilité, spa trop :/ ).
                    • [^] # Re: Pourquoi ?

                      Posté par  (site web personnel) . Évalué à 1.

                      Beh as tu vu les classes Java qui permettent de découvrir une base de données ?
                      connaitre les stored proc, les classes, si le sgbd est transactionnel ?

                      pour faire les programmes dont tu parles, j'utiliserais peut etre plutot groovy ( qui est aussi du java )

                      java sait paraitement faire des interfaces textes... tu as une api qui mappe celle de swing (meme classes, meme interfaces... ) mais qui t'affiche le tout en mode texte.. je recherchrais le nom.

                      http://about.me/straumat

                      • [^] # Re: Pourquoi ?

                        Posté par  (site web personnel) . Évalué à 1.

                        Beh as tu vu les classes Java qui permettent de découvrir une base de données ?
                        connaitre les stored proc, les classes, si le sgbd est transactionnel ?

                        Euh je vois pas trop le rapport, là. J'ai pas parlé de base de données là... (Dans ce cas j'aurais bien évidemment fait du Java, je ne suis pas J2EE Lead Architect depuis 1987 pour rien ;)

                        tu as une api qui mappe celle de swing (meme classes, meme interfaces... ) mais qui t'affiche le tout en mode texte.. je recherchrais le nom.
                        J'attends avec impatience :o

                        Sinan, rien à voir, mais quelqu'un connait-il un bon client Telnet en Java (pour piloter un soft à distance depuis un prog Java) ? Google m'en propose plusieurs, et je ne sais lequel choisir...
                  • [^] # Re: Pourquoi ?

                    Posté par  . Évalué à 1.

                    mmm ??? qu'est ce que Perl fait que java ne fait pas ????

                    Disposes-tu en Java de modules de cryptage de mot de passe sous les formats Unix/DES, SSHA, Windows NT... ?

                    Évidemment, ça peut se programmer, mais c'est mieux quand c'est déjà fait...

                    « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

                    • [^] # Re: Pourquoi ?

                      Posté par  (site web personnel) . Évalué à 1.

                      Lis la doc avant de parler :)
                      http://java.sun.com/products/jce/index.jsp(...)

                      Voila un article où on en parle :
                      http://www.onjava.com/lpt/a/4415(...)

                      et ca fait parti du package de base du j2SE

                      http://about.me/straumat

                      • [^] # Re: Pourquoi ?

                        Posté par  . Évalué à 1.

                        Lis la doc avant de parler :)

                        Je posais une question, je n'affirmais rien.

                        Voila un article où on en parle :

                        Cela dit, à voir l'article, c'est une super interface pour gérer les communications sécurisées... mais ça ne semble pas permettre de générer les formats courants de mots de passe système (ceux qu'on trouve dans /etc/shadow, une base NIS, la SAM de Windows...), ce qui était ma question.
                        À moins qu'il y ait pour ça un/des module(s) disponible(s) par ailleurs.

                        « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

          • [^] # Re: Pourquoi ?

            Posté par  (site web personnel) . Évalué à 1.

            3) avec des niveaux de puissance/souplesse/stabilité assez divers (l'usage des fonctions preg* de PHP est beaucoup moins pratique que la syntaxe de Perl, et niveau memory leak c'est pas mal non plus : en faisant un appel de fonction (ou l'évaluation d'une expression, je ne sais plus) dans la partie remplacement d'un preg_replace, j'avais tout bouffé en trois appels, alors que je n'aurais jamais eu ce problème en Perl).

            Et un point important aussi, c'est la disponibilité d'un important volume de documentation de qualité sur Perl (Perl Cookbook roxor).
            • [^] # Re: Pourquoi ?

              Posté par  (site web personnel) . Évalué à 1.

              Et, hop, self-pub :

              D'ailleurs le projet PLEAC vise à ré-implémenter cet excellent Perl Cookbook dans d'autres langages, dans le but de les comparer et d'offrir une aide à l'apprentissage de ces langages. J'ajoute qu'O'Reilly a été contacté et a offert sa bénédiction à ce projet, entre autres autorisant à publier le code du Perl Cookbook :

              http://pleac.sf.net/(...)
              • [^] # Re: Pourquoi ?

                Posté par  (site web personnel) . Évalué à 0.

                Ce que j'apprécie partiiculièrement dans le Perl Cookbook, c'est la discussion sur les différentes approches/solutions possibles, leurs avantages, leurs inconvénients, ... Ça aide a mieux comprendre et c'est toujours très instructif. J'ai parcouru un peu PLEAC et j'ai l'impression qu'il n'y a qu'une suite de morceaux de code. À mon avis, ça passe à côté du plus important et c'est bien dommage.
    • [^] # Re: Pourquoi ?

      Posté par  . Évalué à 5.

      Peut-être parce qu'il a été fait par quelqu'un de non-informaticien à la base, qui a conçu un langage fait pour être lu et non simplement compris par la machine. Pour une fois c'est la machine qui doit faire des efforts pour comprendre, pas l'humain.

      Je sais que ce que je dis peut sembler faux, tant parfois le Perl parait illisible, mais on retrouve les mêmes travers avec les vrais langages humains : certains auteurs écrivent des trucs chiant, où au bout de 10 lignes on ne sait plus ce qu'on a lu, ou bien utilisant des mots inconnus. Dans ces cas on peut utiliser sa cervelle pour essayer de deviner le sens en fonction du contexte, des racines présentent dans le mot et déjà connues, bref tout ce qui fait que le cerveau d'un humain restera sans doute longtemps devant la machine.

      Honnêtement je trouve que faire du php/C/C++/java, c'est chiant, c'est toujours pareil, c'est carré, on est obligé de raconter tous dans les détails là ou on veut simplement chercher un truc dans une liste, utiliser des concepts objets hach'ment balaizes,... en Perl, tout est possible, c'est vite écris, et on passe à la suite.

      Enfin, un superbe exemple de ce que Perl peut faire (découvert il y a peu sur perl.com) MayPole. En 10 lignes, un site Web de gestion de BD, qui s'adapte à la structure de la base, quelque soit la base. Il s'agit ici d'un exemple non seulement de la puissance Perl, mais aussi de la puissance du partage des modules sur CPAN ; je ne connais pas d'équivalent dans les autres langages...
      • [^] # Re: Pourquoi ?

        Posté par  (site web personnel) . Évalué à 1.

        Je trouve ça "zarb" comme commentaire... je vois pas le rapport, un langage a pour but d'etre clair et lisible.
        Les meilleurs bouquins, les plus utiles sont ceux qui sont clairs...
        As tu déja vu un bouquin de math pas clair ? est réellement bien et pratique ? est ce un bon bouquin ?

        Je parle bien sur de faire des choses utiles, pas de l'art :)

        Quand a ce que perl peut faire, voici un serveur web en java qui fait 10 lignes ;) : http://glaforge.free.fr/weblog/?itemid=78(...)

        http://about.me/straumat

        • [^] # Re: Pourquoi ?

          Posté par  . Évalué à 2.

          Je faisais comme remarque que Perl se rapproche plus d'un langage humain que d'un ersatz de C/Pascal/Java de plus, (comme C# par ex). C'est ce qui fait son originalité et sa force ; on peut exprimer ce qu'on veut dire de façon trés souple, comme dans un langage naturel : il y a toujours plusieurs manières d'exprimer la même idée.

          Remarque également que Perl est le seul langage où certains font des poèmes, alors qu'en C ou en Java, ça ne viendrait à l'esprit de personne. Celà montre bien la singularité de Perl, qui va au delà de considérations puremement informatiques ("mois je préfere X, il est plus objet, oui mais avec Y tu fais du fonctionnel, etc.).

          Et si, faire de l'art, c'est utile. Du Perl bien écris est simple à comprendre, n'a souvent pas besoin de commentaire, c'est court et concis, et en plus c'est efficace (ça fait ce qu'on attend, et ça le fait vite). Enfin - mais là c'est trés subjectif - je pense qu'écrire en Perl permet de se rapprocher de ce que peut ressentir un écrivain, on dépasse le stade de simple programmeur ou informaticien, quelque chose de similaire à ce que l'on ressent en maîtrisant une langue étrangère et en arrivant à comprendre les auteurs étrangers dans leur langue.

          NB : à propos de ton serveur web de 10 lignes en java, ce n'est pas comparable. L'exemple que je donnais se rapproche plus au niveau conception et fonctionalité de la "petite" intro à JBoss du LMF d'Avril...
          • [^] # Re: Pourquoi ?

            Posté par  (site web personnel) . Évalué à 1.

            Tu parles de poèmes en perl ? Comment peut on faire un programme qui soit un poème ?
            • [^] # Re: Pourquoi ?

              Posté par  . Évalué à 3.

              love.pl :

              our $life = \$love and $togetherness;
              and: foreach my $sweet (@first) {
              little: until ($we . $met) { last 'and' }
              }
              if ($now . $we) { goto marry; $we . $shall }
              bless our $life, More;


              PS : cf google, recherche "perl poem"
        • [^] # Re: Pourquoi ?

          Posté par  . Évalué à 2.

          Un language n'a pas pour but d'etre clair et lisible, il a pour but de decrire des processus a un ordinateur et a d'autres etres humains.

          Comme facteurs de qualité entrent en compte:
          - la lisibilité
          - la difficulté d'apprentissage
          - la rapidité de programmation
          - la qualité de l'environnement de programmation

          En perl, je peux faire lisible et concis, j'ai une documentation excellente, j'ai une foultitude de librairies qui la plupart du temps font deja 80% de ce que je veux stockées dans une seule base le CPAN (pour ... par exemple les retrouver...), et d'experience, ca s'apprend tres vite.

          Quel language est mieux, j'en sais rien, mais quand je veux faire vite(au developpement), maintenable et multiplateforme, c'est du Perl que j'utilise.... il faut dire que j'utilise aussi VIM et pas Emacs ... :-p

          (
          un serveur Web basique en Perl : http://cpan.uwinnipeg.ca/htdocs/libwww-perl/HTTP/Daemon.html(...)
          )
      • [^] # Re: Pourquoi ?

        Posté par  . Évalué à 2.

        Moui, enfin c'est surtout parce parmi les langages de script c'est un des plus anciens --> plus répandu --> plus connu donc on le garde.

        Perl ne parait pas illisible, c'est illisible..

        Personellement, je prefere de loin ruby ou python comme langage, dans un nouveau projet au boulot on a gardé perl car ruby n'est pas considéré comme sufisamment répandu (ou connu) et mon chef fait une allergie a la syntaxe de python (blanc significatif).

        Cependant, peut-etre qu'avec Perl "There Is More Than One Way To Do It", mais je peux t'assurer que le premier qui fait du Perl objet dans l'équipe, c'est la porte, la vrai..

        Un exemple comment Perl pousse a programmer de façon crade: la syntaxe de Perl est tellement peu naturelle pour faire un tableau de tableau que la plupart du temps on se simplifie la vie en faisant un tableau de chaine puis un split, beurk..
        • [^] # Re: Pourquoi ?

          Posté par  (site web personnel) . Évalué à 0.

          la syntaxe de Perl est tellement peu naturelle pour faire un tableau de tableau que la plupart du temps on se simplifie la vie en faisant un tableau de chaine puis un split, beurk..
          J'ai déjà utilisé des structures de données assez violentes en Perl, avec plusieurs niveaux de tableux (indexés et associatifs) imbriqués, je ne vois pas le problème.
          • [^] # Re: Pourquoi ?

            Posté par  . Évalué à 3.

            N'importe quoi... Vous êtes sûr que vous faites vraiment du Perl ? Les structures de données à plusieurs niveaux en Perl sont tout à fait naturelle, du moins avec un Perl actuel (au moins à partir du 5.6).

            my @TabDeTab = ([1,2,3],[4,5,6]);
            print $TabDeTab[0][2]; #imprime "3"

            Je ne vois pas le problème ! °_°

            --
            Jedaï
        • [^] # Re: Pourquoi ?

          Posté par  . Évalué à 1.

          Personellement, je prefere de loin ruby ou python comme langage, dans un nouveau projet au boulot on a gardé perl car ruby n'est pas considéré comme sufisamment répandu (ou connu) et mon chef fait une allergie a la syntaxe de python (blanc significatif).

          Pour un projet de taille conséquente et qui n'entre pas dans les domaines de prédilection de Perl, je préférerais peut-être Ruby ou Python aussi, même si j'ai plus de pratique sur Perl...

          je peux t'assurer que le premier qui fait du Perl objet dans l'équipe, c'est la porte, la vrai..

          Bah pourquoi ???
          Vous ne voulez pas risquer de faire un truc propre en Perl ?
          Ou alors vous êtes masos et vous avez pensé que faire un gros projet en Perl entièrement pas objet, ce serait la meilleure manière de souffrir ? ;-)

          « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

          • [^] # Re: Pourquoi ?

            Posté par  . Évalué à 3.

            >Bah pourquoi ???
            >Vous ne voulez pas risquer de faire un truc propre en Perl ?

            Le but de Perl est pour nous de lier des applications, donc les programmes sont sensé garder une petite taille..

            Or le Perl, c'est comme le shell, si tu laisses les gourous utiliser tous les "raccourcis" du language, ça devient illisible et inmaintenable pour tous sauf pour des gourous.

            jigso trouve que faire du "php/C/C++/java, c'est chiant, c'est toujours pareil, c'est carré", alors qu'en Perl tout est possible, le truc justement quand tu programmes en équipe, c'est qu'il faut que ce soit aussi carré que possible!

            Pour se faire plaisir chez soi, le Perl c'est sympa, mais pour programmer au boulot ou les gars sont en général moyen en Perl, eh bien il faut faire attention a ce que tout le monde utilise des constructions comprehensible par tous, meme si ça rallonge un peu le code.

            Un exemple, un prestataire s'est amusé a faire du code Perl objet en utilisant pas mal de perlismes, résultat on a été obligé de réécrire son code.. Je ne travallais pas sur le sujet, mais connaissant (un peu) mieux le Perl que les autres, j'ai du aider a nettoyer le bordel et il y avait du boulot, certaines bout de code de 2 lignes necessitaient 1/2h et un bouquin de Perl à coté pour comprendre (pas tellement pour comprendre, pour être sûr qu'il n'y a pas d'effet de bord voulu) alors que recoder ça de telle manière qu'un débutant en Perl puisse comprendre, ça prenait 4-5 lignes, pas plus..

            Tu peux bien sûr faire plus ou moins avoir le meme probleme dans n'importe quel language, mais pour faire du Java aussi touffu a comprendre que du Perl, ça me parait bien difficile..
            • [^] # Re: Pourquoi ?

              Posté par  . Évalué à 1.

              jigso trouve que faire du "php/C/C++/java, c'est chiant, c'est toujours pareil, c'est carré", alors qu'en Perl tout est possible, le truc justement quand tu programmes en équipe, c'est qu'il faut que ce soit aussi carré que possible!

              Ne confondons pas tout : je parlais du langage, pas de la façon de l'utiliser. On peut avoir des rêgles strictes de codages et s'y tenir, je pense que tous ceux qui ont eu une experience en entreprise où les rêgles ne sont pas suivi ont pu constater les dégats...

              Par contre les langages classiques sont souvent assez frustrant, par ex un for(i=0;i<n;i++) { ...tableau[i]... } "pollue" plus mon cerveau qu'un foreach (@tableau) : dans la seconde forme on comprend tout de suite qu'on parcourt le tableau, alors que dans la seconde ça ne saute pas aux yeux, surtout si le bloc est un peu long. Maintenant, si on utilise map pour faire ce genre de chose, on peut effectivement se retrouver avec du code illisible, mais c'est comme dans la vrai vie, je pe choasir 2 chanjé lé regl é fèr 1 truc ylysyble. viv lé sms :-/
              • [^] # Re: Pourquoi ?

                Posté par  . Évalué à 1.

                En theorie tu as raison d'ailleurs nous avons des regles de codage en perl bien sur, en pratique, il est parfois difficile d'imposer des regles de codages pour plusieurs raisons: pas le temps de relire ce qu'a fait l'autre, c'était un proto qui aurait du mourir mais qui est gardé, il est difficile d'engueuler un chef, etc..

                En Java ou en Python, il est quand même un peu plus difficile de produire du code illisible, en Perl, c'est plus que facile et malgrés mon expérience moyenne en Perl, j'ai eu a jouer le pompier plusieurs fois, ce qui me fait apprécier le language de moins en moins..

                [ Anedocte amusante: on m'a envoyé un fichier de Perl en attachement, la fille qui avait fait cela l'avait recopié par un copier/coller, donc les lignes étaient tronquées.. Je fais passer la suite de moulinettes et j'obtiens bien sur n'importe quoi en sortie mais l'interpréteur perl ne s"était même pas arrété en erreur a cause des lignes tronquée! ]
      • [^] # Re: Pourquoi ?

        Posté par  (site web personnel) . Évalué à 1.

        tu viens de me faire découvrir MayPole, ça a l'air assez terrible, merci :)
        • [^] # Re: Pourquoi ?

          Posté par  . Évalué à 1.

          Merci surtout à LinuxFR : j'ai activé les boiboites à gauches, qui montrent les titres des news de use.perl.org et perl.com, c'est comme ça que je suis tombé sur les tutoriaux - et sur le cul par la même occasion ;-)
    • [^] # Re: Pourquoi ?

      Posté par  (site web personnel) . Évalué à 2.

      - Parce que le langage a toutes les propriétés dont j'ai besoin quand je veux faire un script : tables de hash, regex, ...
      - Parce que je suis à peu près sûr que quoi que je veuille faire, il y aura un module pour.
      - Parce que c'est portable.
      - Parce que je maîtrise ce langage plutôt pas trop mal et que malgré tout il m'arrive encore d'apprendre de nouvelles choses.
      - Parce que malgré son extrème flexibilité, ce langage a une conception très logique et carrée, et une fois qu'on connait bien le langage, c'est un pur bonheur (contrairement à PHP par exemple, qui se veut très simple, mais qui nous fait découvrir d'immondes gruickitudes au fur et à mesure qu'on apprend à le maîtriser).
      - Et parce que Perl rulez :o
    • [^] # Re: Pourquoi ?

      Posté par  . Évalué à 2.

      Pour l'administration système, c'est le langage de choix parce que :
      - il est particulièrement adapté par lui-même à l'analyse et à la modification de fichiers de configuration ou de journaux système;
      - avec ses modules, on dispose de toutes les fonctionnalités qu'on peut souhaiter dans ce domaine (ex: accès à un annuaire LDAP, cryptage de mots de passe sous toutes les formes...);
      - il est disponible sur à peu près tous les systèmes courants et de plus en plus souvent installé d'origine;
      - on peut aussi bien l'utiliser en ligne (voir par exemple http://www-106.ibm.com/developerworks/linux/library/l-p101/(...) ), pour une petite manip rapide, que pour des programmes complexes;
      - on peut aussi bien l'interfacer en mode texte qu'avec le web ou X11 (par exemple pour fournir un service aux utilisateurs ou faire une interface d'administration).

      « Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone

      • [^] # Re: Pourquoi ?

        Posté par  (site web personnel) . Évalué à 2.

        J'en ajoute :

        énorme base de modules centralisée :
        http://search.cpan.org(...) accessible en ligne de commande sur n'importe quel os

        # perl -MCPAN -e shell
        > install HTML::Mason

        mod_perl permet de réécrire tout le comportement d'apache

        http://www.masonhq.com(...) pour les web appli : mod_perl + template + gestion de cache, il ne manque que le load balancing

        la question serait plutôt pourquoi utiliser un autre langage :-)
        • [^] # Re: Pourquoi ?

          Posté par  (site web personnel) . Évalué à 1.

          Alors, par rapport au java, mais me tapez pas...

          API java plus grande...
          Documentation, tutorial abondants...
          Java aprris à l'école
          Disponibilité des servlets, jsp et de tomcat ( load balancing la dedans ;) )
          Des grosses structures derrières ( IBM, ORacle, INRIA... )
          des machines virtuelles libres
          habitudes des tests unitaires

          ce sont les avantages que je vois

          http://about.me/straumat

          • [^] # Re: Pourquoi ?

            Posté par  (site web personnel) . Évalué à 4.

            désolé il n'y a que le load balancing

            pour la taille de l'API, il n'y a pas de raison quelle soit plus grande.
            la documentation et les tutorials de java ne sont pas plus grands que pour perl et surtout il manque le CPAN :

            Une installation par CPAN c'est comme une gestion de paquets : gestion de version, de dépendance et tests unitaires inclus pour compiler et installer un module. Les modules qui ne s'installent pas sont plus qu'exceptionnels.

            donc
            jsp => mod_perl
            tomcat => mason
            servlet => modules

            Et ça marche sur tous les OS, installé par défaut sur tout unix aucun problème sur win32.
            Existe et est utilisé depuis plus longtemps que java sans jamais avoir besoin de jvm spécifique avec une version spécifique. Compatibilité ascendant parfaite depuis plus de 10 ans et performance .... Pourquoi s'embéter avec java ?
          • [^] # Re: Pourquoi ?

            Posté par  . Évalué à 1.

            API java plus grande...

            Tu éstimes ca comment ?

            Documentation, tutorial abondants...

            Pour Perl aussi.

            Java aprris à l'école

            Perl aussi (enfin pour moi). Et puis tu as le droit d'apprendre d'autres langages que ceux qu'on t'apprend à l'école :)

            des machines virtuelles libres

            Ha bon ? Tu parles peu être de gcj ?
            Elles ne supportent pas tout, ca s'en rapproche mais c'est pas encore le cas, si tu ne veux pas avoir de problème, tu dois encore utiliser la jvm de Sun ou d'IBM.
    • [^] # Re: Pourquoi ?

      Posté par  . Évalué à 3.

      Lis un bouquin de Larry Wall, lis un bouquin sur C# et compare.

      D'un côté de l'humour à en revendre, de la finesse, de l'excentricité, de la culture
      Juste un exemple ==> http://www.oreilly.fr/divers/tribune-libre/fr-ch09.html(...)

      De l'autre, (du moins dans ceux que j'ai leu) apparemment pas une seue blague. Doit-on être considérés comme des zombies technophiles clonables à l'infini ?

      L'éternel combat homme-machine semble pencher vers ce dernier...



      Pis, Perl6 et Parrot ro<>or !!
      • [^] # Re: Pourquoi ?

        Posté par  . Évalué à -2.

        Perl6 ro<>or !! , ouais ouais c'est ça ouais.
        "Perl6 is the next version of the Perl programming language." dixit perl.org
        Rassure moi, tu dis ça pour le futur à moins que tu ne sois un fana de Mandrake.
        Pou les moinssoyeurs, sachez que ce n'était qu'une blague à 2 balles (journée assez dure), longue vie à Mandrake.
  • # Interview de Larry Wall

    Posté par  . Évalué à 3.

    A propos de Perl, on peut trouver une interview de Larry Wall (le créateur de Perl) sur Linux Journal :
    http://www.linuxjournal.com/article.php?sid=3394(...)
    • [^] # Re: Interview de Larry Wall

      Posté par  . Évalué à 3.

      Un extrait pour mettre tout le monde d'accord ;-)

      Marjorie: In what way is Perl better than other scripting languages such as Python and Eiffel?

      Larry: Perl is unique, not just among scripting languages, but among computer languages in general. It's the only computer language consciously and explicitly designed to be postmodern. All other computer languages are still stuck in the modern era to some degree. Now, as it happens, I don't normally use the term ``postmodern'' to describe Perl, because most people don't really understand postmodernism, even as they embrace it. But the fact is that American culture has become thoroughly postmodern, not just in music and literature, but also in fashion, architecture and in overall multicultural awareness.

      Modernism was based on a kind of arrogance, a set of monocultural blinders that elevated originality above all else, and led designers to believe that if they thought of something cool, it must be considered universally cool. That is, if something's worth doing, it's worth driving into the ground to the exclusion of all other approaches. Look at the use of parentheses in Lisp or the use of white space as syntax in Python. Or the mandatory use of objects in many languages, including Java. All of these are ways of taking freedom away from the end user ``for their own good''. They're just versions of Orwell's Newspeak, in which it's impossible to think bad thoughts. We escaped from the fashion police in the 1970s, but many programmers are still slaves of the cyber police.

      In contrast, postmodernism allows for cultural and personal context in the interpretation of any work of art. How you dress is your business. It's the origin of the Perl slogan: ``There's More Than One Way To Do It!'' The reason Perl gives you more than one way to do anything is this: I truly believe computer programmers want to be creative, and they may have many different reasons for wanting to write code a particular way. What you choose to optimize for is your concern, not mine. I just supply the paint--you paint the picture.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.