While looking at the changes necessary to implement the exception
related syntax changes (except ... as ..., raise without type),
I came across some more substantial things that I think must be discussed.
* How should exceptions be represented in C code? Should there still
be a (type, value, traceback) triple?
* Could the traceback be made an attribute of the exception?
* What about exception chaining?
Something like this comes to mind::
try:
whatever
except ValueError as err:
raise CustomException("Something went wrong", prev=err)
With tracebacks becoming part of the exception, that could be::
raise CustomException(*args, prev=err, tb=traceback)
(`prev` and `tb` would be keyword-only arguments)
With that, all exception info would be contained in one object,
so sys.exc_info() could be renamed to sys.last_exc().
cheers,
Georg
_______________________________________________
Python-3000 mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-3000
Unsubscribe:
http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com