jcm> What happens if f(x) is evaluated if e(x) is false? An jcm> exception? I'd consider that a side effect. What happens is that your program is incorrect. -- Andrew Koenig, ark at research.att.com, http://www.research.att.com/info/ark