> You do understand that exceptions aren't just for errors? They are raised > under specific circumstances. Whether that circumstance is an error or > not is entirely up to the caller.
I think that's a fairly narrow definition of the word error, and probably also the source of confusion in this thread. ISTM that there is a long tradition of giving different meaning to the word "error" in computing. For example, the Unix man pages list various conditions as "errors" purely by their outcome, and completely ignoring on whether the caller would consider the result erroneous - ISTM that a system call reports an "error" iff it is "unsuccessful". By that (common) usage of "error", it is a condition determined by the callee, not the caller (i.e. callee could not successfully complete the operation). In that sense, it is indeed equivalent to Python's usage of exceptions, which are also determined by the callee, and typically also in cases where successful completion is not possible. Whether these cases are "exceptional" in the word sense (i.e. deviating from the norm) would have to be decided by the application, again (which would set the norm). Regards, Martin -- http://mail.python.org/mailman/listinfo/python-list