|
[Date Index]
[Thread Index]
[Author Index]
Re: "short circuiting" And and Or
- To: mathgroup at smc.vnet.net
- Subject: [mg70624] Re: "short circuiting" And and Or
- From: David Bailey <dave at Remove_Thisdbailey.co.uk>
- Date: Sat, 21 Oct 2006 05:14:21 -0400 (EDT)
- References: <eha5b7$b5b$1@smc.vnet.net>
Szabolcs Horvat wrote:
> I'd like to write a function that tests whether there are any elements
> in a list that violate a certain condition. I could simply use
> And@@condition/@list, but for reasons of efficiency I'd like to stop
> the testing as soon as a "False" value is found. Is there any elegant
> way of doing this without writing an explicit While loop?
>
> Szabolcs Horvát
>
Hello,
The following program illustrates that this is already the behaviour:
f1[]:=(Print["f1"];False);
f2[]:=(Print["f2"];False);
f1[] && f2[]
Notice that And has attribute HoldAll - so it can evaluate its arguments
as required, and that it does not have attribute Orderless - so the
arguments can't get permuted.
David Bailey
http://www.dbaileyconsultancy.co.uk
Prev by Date:
Re: Problem in loading packages in Mathematica
Next by Date:
Re: "short circuiting" And and Or
Previous by thread:
Re: "short circuiting" And and Or
Next by thread:
Re: Re: "short circuiting" And and Or
|