À (at) 10 Jan 2006 17:28:21 GMT, (Jean-Louis MOREL) écrivait (wrote):
Le module Readonly permet de définir des constantes qui s'interpolent bien.
Exact (je l'avais oublié celui-là ;-)).
Readonly a tout de même un petit défaut (outre de ne pas être dans la distribution standard mais ce n'est pas vraiment un défaut), c'est qu'il n'est pas reconnu lors de la compilation. Je m'explique... Si je code :
use constant DEBUG => 0;
if (DEBUG) { # ... # plusieurs centaines d'instructions }
Puisque DEBUG est à zéro et que c'est reconnu lors de la *compilation*, le code à l'intérieur du 'if' n'est même pas compilé...
Avec Readonly ce n'est pas le cas.
Il y a aussi quelques autres rares cas de ralentissement cités dans la doc de Readonly.
Mais tout cela n'est problèmatique que pour des applications critiques... Et donc effectivement 'Readonly' a plein d'atouts qui peuvent le rendre plus attractifs que 'constant' la plupart du temps.
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>
À (at) 10 Jan 2006 17:28:21 GMT,
jl_morel@bribes.org (Jean-Louis MOREL) écrivait (wrote):
Le module Readonly permet de définir des constantes qui s'interpolent bien.
Exact (je l'avais oublié celui-là ;-)).
Readonly a tout de même un petit défaut (outre de ne pas être dans la
distribution standard mais ce n'est pas vraiment un défaut), c'est
qu'il n'est pas reconnu lors de la compilation. Je m'explique... Si je
code :
use constant DEBUG => 0;
if (DEBUG) {
# ...
# plusieurs centaines d'instructions
}
Puisque DEBUG est à zéro et que c'est reconnu lors de la
*compilation*, le code à l'intérieur du 'if' n'est même pas compilé...
Avec Readonly ce n'est pas le cas.
Il y a aussi quelques autres rares cas de ralentissement cités dans la
doc de Readonly.
Mais tout cela n'est problèmatique que pour des applications
critiques... Et donc effectivement 'Readonly' a plein d'atouts qui
peuvent le rendre plus attractifs que 'constant' la plupart du temps.
--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>
À (at) 10 Jan 2006 17:28:21 GMT, (Jean-Louis MOREL) écrivait (wrote):
Le module Readonly permet de définir des constantes qui s'interpolent bien.
Exact (je l'avais oublié celui-là ;-)).
Readonly a tout de même un petit défaut (outre de ne pas être dans la distribution standard mais ce n'est pas vraiment un défaut), c'est qu'il n'est pas reconnu lors de la compilation. Je m'explique... Si je code :
use constant DEBUG => 0;
if (DEBUG) { # ... # plusieurs centaines d'instructions }
Puisque DEBUG est à zéro et que c'est reconnu lors de la *compilation*, le code à l'intérieur du 'if' n'est même pas compilé...
Avec Readonly ce n'est pas le cas.
Il y a aussi quelques autres rares cas de ralentissement cités dans la doc de Readonly.
Mais tout cela n'est problèmatique que pour des applications critiques... Et donc effectivement 'Readonly' a plein d'atouts qui peuvent le rendre plus attractifs que 'constant' la plupart du temps.
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/> Perl en français - <http://perl.enstimac.fr/>
Yves Martin
Heu... 'perldoc constant' dans la section "BUGS".
Mais tout cela n'est problèmatique que pour des applications critiques... Et donc effectivement 'Readonly' a plein d'atouts qui peuvent le rendre plus attractifs que 'constant' la plupart du temps.
Merci... très intéressant tout cela. Maintenant je sais que "use constant" déclare en fait une fonction !
-- Yves Martin
Heu... 'perldoc constant' dans la section "BUGS".
Mais tout cela n'est problèmatique que pour des applications
critiques... Et donc effectivement 'Readonly' a plein d'atouts qui
peuvent le rendre plus attractifs que 'constant' la plupart du temps.
Merci... très intéressant tout cela.
Maintenant je sais que "use constant" déclare en fait une fonction !
Mais tout cela n'est problèmatique que pour des applications critiques... Et donc effectivement 'Readonly' a plein d'atouts qui peuvent le rendre plus attractifs que 'constant' la plupart du temps.
Merci... très intéressant tout cela. Maintenant je sais que "use constant" déclare en fait une fonction !
-- Yves Martin
Yves Martin
Heu... 'perldoc constant' dans la section "BUGS".
Mais tout cela n'est problèmatique que pour des applications critiques... Et donc effectivement 'Readonly' a plein d'atouts qui peuvent le rendre plus attractifs que 'constant' la plupart du temps.
Merci... très intéressant tout cela. Maintenant je sais que "use constant" déclare en fait une fonction !
-- Yves Martin
Heu... 'perldoc constant' dans la section "BUGS".
Mais tout cela n'est problèmatique que pour des applications
critiques... Et donc effectivement 'Readonly' a plein d'atouts qui
peuvent le rendre plus attractifs que 'constant' la plupart du temps.
Merci... très intéressant tout cela.
Maintenant je sais que "use constant" déclare en fait une fonction !
Mais tout cela n'est problèmatique que pour des applications critiques... Et donc effectivement 'Readonly' a plein d'atouts qui peuvent le rendre plus attractifs que 'constant' la plupart du temps.
Merci... très intéressant tout cela. Maintenant je sais que "use constant" déclare en fait une fonction !