• [^] # Re: Pub Honteuse

    Posté par . En réponse à la dépêche Revue de Presse - Mai 2004. Évalué à 1.

    Je pense exactement l'inverse. Perl permet de faire beaucoup de choses de beaucoup de facons differentes. Des lors, dire que Perl est illisible n'a plus de sens. Perl est illisible s'il est programme de facon illisible, mais le langage permet aussi d'ecrire tres lisiblement. Les gens sont habitues aux exemples de code "obfuscated" blinde d'expressions regulieres, mais ca ne reflete pas du tout l'image d'un code Perl "moyen".
    Je pense que de nombreux langages soit-disant simples sont extremement traitres. Le fait que les variables ne soient differenciees par aucun symbole ne simplifie aucunement le langage. En Perl au contraire, ce qui semble obscur est limpide. %{$hash} c'est la table de hachage qui se trouve tout au bout de la reference $hash. On sait sur quoi on travaille et en general, quand on fait une erreur, on la reconnait tres vite grace a cela. Le vrai probleme de Perl c'est justement quand il devient trop simple pour le programmeur. En effet, des que le programmeur se met a utiliser toutes les astuces de Perl (la variable $_ particulierement) alors le code se differencie beaucoup du code d'un autre langage, et il faut alors un peu de pratique de Perl pour ne pas etre deroute. "Il travaille sur quoi ? Il applique un operateur sur rien ??" Et de toutes facons de tels symboles il n'y en a que trois (,ドル@,%).
    Alors d'accord, on peut programmer a l'ancienne, et faire 20 lignes de code comprehensible alors qu'une ligne, certe moins claire, suffit.
    Dans mon MUD, pour classer mes clans par nombre de points decroissants, je trie des tableaux dans lesquels le nombre de points est stocke en deuxieme position. Voila la ligne:

    my @dlst = reverse sort {@{$a}[1] <=> @{$b}[1]} @lst;

    Quand on a trouve comment le faire une fois, on pourra le refaire facilement des que l'occasion se representera. Est-ce que ca ne vaut pas la peine d'essayer ?