[Roma.pm] Tirando le fila... [Was: Re: Alca Seltzer]

Marco Balestra balestra at cesmail.net
Fri Mar 3 13:19:07 PST 2006


On 03/mar/06, at 19:57, Emanuele Zeppieri wrote:

> OK, allora sembra chiaro: si trattava proprio del warning  
> individuato da
> Aldo, che viene scatenato dall'assegnazione $! = "cazzo", che a causa
> dell'operatore 'and' viene valutata in contesto booleano.

quindi... e` un vero problema del cazzo, dopotutto =:-D

> L'operatore 'and' ha precedenza più alta rispetto ad 'or' e pertanto
> l'ordine di valutazione dell'intera espressione è il seguente:
>
> (my $foo = shift) or ($!="cazzo" and exit 0);

fin qui ci siamo

> e il blocco ($!="cazzo" and exit 0) è semanticamente *equivalente*
> proprio al:
>
> if ($! = "cazzo") {exit 0};

l'idea era proprio quella.

> sub pippo {
>     my $foo = shift or $!="cazzo", exit 0;
> }

si`, vero, molto piu` carino a legersi.

> Se volete aggiungere qualcosa, o se qualcuno (Flavio? ;-) se la  
> sente di
> compendiare il tutto, potrebbe uscirci un articolo su come una
> goliardica porchettata può trasformarsi in una feconda disamina dei  
> Perl
> internals.

LOL! :-D
-- 
Marco Balestra
IT consultant
balestra at cesmail.net





More information about the Roma mailing list