2015-03-22 16:03 GMT+01:00 Gollum1 <gollum1.smeag...@gmail.com>: > Il 22/03/2015 14:13, Manlio Perillo ha scritto: > >> >> http://en.wikipedia.org/wiki/Short-circuit_evaluation#Possible_problems >> >> > grazie, lettura molto interessante, la prima problematica l'avevo già > intuita (il fatto di usare la seconda valutazione booleana per avere dei > risultati che saranno poi usati nel seguito, che non vengono mai generati > perché non viene valutata la seconda espressione se è falsa la prima). > > Con un po' di attenzione nella stesura del codice, questo problema non > sarebbe poi tale (certo è da sapere che si può cadere in questo tranello). > > invece non avevo considerato le problematiche date dalla valutazione a > corto circuito nel campo dei compilatore, che praticamente va ad impattare > in modo pesante nel sistema di predizione del compilatore stesso... >
Tra l'altro il tutto è complicato dal fatto, AFAIK, che ciascuno degli operandi può avere effetti collaterali. Ad esempio: https://play.golang.org/p/jc0vKCWFu7 Se lasciamo la scelta di come valutare i termini al compilatore, il programma avrà un comportamento diverso a seconda di come il compilatore decide di ottimizzare. L'alternativa è proibire gli effetti collaterali ovunque il compilatore ha la possibilità di ottimizzare... Questo credo sia il caso di Fortran, ma non ne sono sicuro. Ciao Manlio
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python