Aprendiendo Perl, el reto: Encontrar duplicados
Marcelo E. Magallon
marcelo.magallon en gmail.com
Jue Abr 5 17:42:02 PDT 2012
Hola,
On Thu, Apr 05, 2012 at 02:30:39AM -0600, Dmitriy Ryajov wrote:
> opendir my $dh, $directory or
> print "Error opening dir: $directory\n$!" &&
> return; # don't die, we just want to skip this dir
Si bien la construcción es perfectamente válida, en general
cosas estilo "a or b || c" son mejor evitarlas. No me refiero a
"a or b" sino a la mezcla de operadores booleanos de baja
precedencia (or, and, not) con operadores de alta precedencia
(||, &&, !). La razón es mantenibilidad del código.
Consideren por ejemplo este ejemplo absurdo:
---------- 8< ----------
sub test
{
0 or say 1 && return;
}
test;
---------- >8 ----------
¿Qué pasa cuando otra persona venga detrás y haga esto?
---------- 8< ----------
sub test
{
0 or say 1, " ", 2 && return;
}
test;
---------- >8 ----------
Saludos y gracias por el aporte,
Marcelo
Más información sobre la lista de distribución Costarica-pm