[Perl] Prototypes et signatures

Stéphane Gigandet biz at joueb.com
Jeu 30 Juin 10:08:56 CEST 2022


Bonjour,

Dans le code d'Open Food Facts, on a pris l'habitude d'utiliser les 
prototypes des fonctions pour indiquer le nombre de paramètres attendus.

Du genre :

sub ma_fonction($$) {

     my $param1 = shift;

     my $param2 = shift;

..

}

C'est pratique car si j'appelle ma_fonction("un seul paramètre"), j'ai 
une erreur à la compilation.

Mais il y a plein de posts qui expliquent quel les prototypes en Perl 
c'est mal et qu'il ne faut pas les utiliser comme ça. En pratique aucune 
de nos fonctions n'est appelée avec des listes en paramètres, seulement 
des scalar / des ref.

On se pose la question de changer ces prototypes : les garder, les 
enlever, les remplacer par les signatures 
https://perldoc.pl/perlsub#Signatures ?

Le début de discussion est là : 
https://github.com/openfoodfacts/openfoodfacts-server/issues/6956

Je me demandais ce que vous faisiez dans vos projets ?

Merci et bonne journée (sous la pluie ?),

Stéphane



Plus d'informations sur la liste de diffusion Perl