• [^] # Perl

    Posté par . En réponse à la dépêche Sortie de GNU Awk 4.1.0. Évalué à 6.

    perl est bien, mais gawk est un peu plus concis et des fois plus efficace (je ne parle pas de performances).

    Je demande à voir un exemple.

    perl -n permet d’émuler le comportement d’AWK (c’est-à-dire exécuter le code pour chaque ligne ; bon, ça fait quatre caractères en plus pour l’appel, le reste est de taille équivalente).
    -a permet l’auto-découpage des lignes en champs. -l supprime les retours chariots des fins de ligne (je ne sais pas s’il y a un équivalent AWK, mais parfois, c’est pratique).

    perl -p (à la place de -n) permet en plus d’imprimer les lignes après traitement (plus comme sed, mais celui-ci est beaucoup plus limité), alors qu’avec AWK, il faut le faire explicitement (sur ce coup-là, Perl est plus concis).

    Pour le reste, on dispose d’un langage bien plus puissant et avec un champ d’application bien plus vaste qu’AWK, sed et autres (et le même à chaque fois).

    En plus la syntaxe d’AWK n’est pas plus simple que celle de Perl (je fais encore un peu d’AWK, rarement, quand j’ai un petit script pour lequel je souhaite éviter la dépendance à Perl, et il y a quelques cas où la syntaxe d’AWK est même moins évidente).

    Alors bon, je remercie les développeurs qui maintiennent gawk, parce qu’AWK est malgré tout un bon outil sur lequel je suis bien content de pouvoir compter, même sur les systèmes hostiles (c’est-à-dire sans Perl installé — bon, les trucs sans Perl ni AWK, je ne considère pas ça comme des systèmes), mais franchement, j’utilise et je conseille Perl à la place de ces petits outils : autant investir son temps sur un langage unique avec des possibilités plus vastes. Si je ne m’étais pas mis à AWK avant Perl, je ne le ferais pas maintenant.

    « Le fascisme c’est la gangrène, à Washington comme en Russie. » — adapté de Renaud, Hexagone