[Rio-pm] Chaves de hash
Adriano Ferreira
a.r.ferreira em gmail.com
Terça Dezembro 4 08:55:05 PST 2012
2012/12/4 Blabos de Blebe <blabos at gmail.com>:
> Até onde eu sei, não existe operador de short circuit. O short circuit
> é uma propriedade, uma otimização na avaliação de expressões lógicas.
Sim, existem operadores de "short circuit" que são aqueles que podem
ou não completar a avaliação ("evaluation") do segundo argumento
baseado no primeiro. Este é o caso dos operadores lógicos
and or xor err
&& || ^ //
Assim em
$a = 0; ++$a || ++$a; $a # $a termina como 1
o segundo "++$a" nunca vai ser executado, mas em
$a = -1; ++$a || ++$a; $a
o primeiro "++$a" deixa 0 em $a e o segundo "++$a" deixa 1.
Você não pode representar estes operadores como funções
f( operando1, operando2 )
onde todos os operandos são calculados antes da invocação de "f" - que
é o mesmo de caso de se representar os comandos condicionais "if" e
"unless". Aposto que vocês lembraram das aulas de linguagem
funcionais, "applicative vs normal order evaluation", etc.
Mais detalhes sobre a lista de discussão Rio-pm