Discussion:
arguments de sub...
(trop ancien pour répondre)
Thomas vO
2013-02-10 10:57:17 UTC
Permalink
Bonjour,

J'ai une petite question, je suis tombé récemment sur une sub qui était
définie :

sub xxx($$;@) {
my ($x, $y, $z) = @_;

}

Je ne comprends pas la syntaxe utilisée "$$;@" ; quelqu'un pourrait me
mettre sur une piste ?

(je sais que $$ correspond au PID, mais je vois pas l'intêret… pour
info, c'est dans les sources d'ikiwiki…)
--
Tiens, ça je connaissais pas. Tu peux m'en dire plus ? (Ma religion
m'interdit de lire la doc le vendredi...)
-+- mpg in fr.comp.text.tex -+-
Jean-Louis Morel
2013-02-10 11:12:16 UTC
Permalink
Post by Thomas vO
Bonjour,
J'ai une petite question, je suis tombé récemment sur une sub qui était

}
mettre sur une piste ?
(je sais que $$ correspond au PID, mais je vois pas l'intêret… pour
info, c'est dans les sources d'ikiwiki…)
Voir prototypes dans la doc perlsub :

http://www.bribes.org/perl/docfr/perlsub.html#L016786F8

HTH

--
J-L
http://www.bribes.org/perl
Le TeXnicien de surface
2013-02-10 11:17:54 UTC
Permalink
Post by Thomas vO
Bonjour,
J'ai une petite question, je suis tombé récemment sur une sub qui était

}
mettre sur une piste ?
Dans la 3e éd. en français de «Programmation en PERL» on parle de
prototypes.

Il s'agit (extrait sec du susdit livre) de permettre de définir des
sous-programmes qui fonctionnent comme les commandes internes.

exemples fournis

déclaré comme | appelé comme
sub monlink($$) | monlink $ancien, $nouveau
Post by Thomas vO
(je sais que $$ correspond au PID, mais je vois pas l'intêret… pour
info, c'est dans les sources d'ikiwiki…)
jeqça
--
Le TeXnicien de surface
Marc Espie
2013-02-10 12:48:14 UTC
Permalink
le point le plus important etant peut-etre que les prototypes ne fonctionnent
pas du tout "comme" dans d'autres langages (ils ne verifient pas le type
des parametres, ils forcent les parametres a avoir "le bon' type), ce qui
occasionne souvent de grosses surprises.

(le 2e point etant que les prototypes ne marchent pas avec les methodes, ce
qui les rend plus ou moins inutiles pour de la programmation recente avec
du perl de base, e.g., sans Moose).

Loading...