• # Mes 2 cents

    Posté par . En réponse au journal Perl, Javouille, Lisaac|(Ruby|SmallTalk|etc..). Évalué à 5.

    Cela fait environ 10 ans que j'utilise Perl pour mes divers projets. J'ai commencé par là car je suis arrivé sur un projet qui utilisait Perl, et depuis je n'ai pas changé de langage.
    L'une des premières raison est que quelque soit l'Unix sur lequel je travaille, je suis quasiment sûr d'avoir un Perl installé, c'est beaucoup moins sûr avec les autres langages cités dans ce journal.
    Une autre raison est que ce langage correspond parfaitement à mon besoin: analyse de texte, migration de données, manipulation de fichiers,... Je n'ai jamais été confronté à une limitation de ce langage qui m'aurait obligé à utiliser autre chose. Au passage, je me permets également de souligner les performances de Perl pour les traitement sur les fichiers, ça compte quand comme moi on joue avec des fichiers de log compressés de plusieurs Giga. Sur ce terrain là, Python, Ruby and co sont encore loin.

    Je ne l'utilise que de façon simple, comme beaucoup de personnes l'ont signalé ici. Les trucs implicites, oui un peu, mais pas trop.

    @liste = %h{@t};

    je n'aime pas trop par exemple. De même, quand je lis un fichier, je préfère un truc du genre

    while (my $line=<IN>)

    que

    while (<IN>)


    Je pense que le procès d'illisibilité est un faux procès, dans n'importe quel langage on peut écrire des choses illisibles. Il est tout à fait possible avec un peu de discipline de faire un code lisible. Voire par exemple les Best practices de Damian Conway.

    Il y a bien sûr le CPAN, avec son installeur de module en ligne de commande qui résout les dépendances:

    perl -MCPAN -e shell

    cpan shell -- CPAN exploration and modules installation (v1.7602)
    ReadLine support enabled
    cpan> install mon_module

    ...

    Tous les modules nécessaires sont téléchargés et installés, comme apt-get ou yum

    Pour le Web, il y a des frameworks assez complets comme Catalyst ou Mason. Pour ma part, je reste simple avec CGI::Application associé au Template toolkit. C'est propre et simple.

    Et puis, il y a mod_perl, c'est à dire l'intégration de Perl dans Apache, et là, ça déchire vraiment.

    Bref, Perl et moi, ça risque de continuer encore un moment. Je n'ai pas d'impatience particulière vis à vis de Perl6. La seule chose qui m'ennuie un peu dans Perl5, c'est que l'on soit obligé d'implémenter les objets avec des Hash (ou avec une structure "physique" définie), alors que c'est en général opaque dans les autres langages et ça le sera dans Perl6.