> Still, why do you want None instead of raisng an exception > (as is the case in other factorial implementations)?
A null value is as good/bad as raising an exception in my book. Since you can't do math on a None object, any attempt to do so will raise an exception: >>> 42 + fact(-1) I generally prefer my functions to return semi-sensible results (in this case, None makes sense to me, as there isn't really a definition of "negative-one factorial"). It also fits in my head alongside my SQL where NULL values/expressions can be returned and evaluated without the whole query falling over. I suppose if you really wanted to throw an exception using this lambda craziness, you could wrap the whole result in "0 + ([body])" which, if the body returned Null, would push up exception daisies (with slightly misleading exception information). -tkc -- http://mail.python.org/mailman/listinfo/python-list