> There's no urgency at all but a bug report isn't the right place for > the discussin, nor is our group's private email. I didn't think > that raising the question in the appropriate forum constituted > emergency action :-). One of your messages sounded like you were impatiently waiting to commit your change, and I wondered why that was. > GvR> I don't think the patch is ready yet, see my comment on SF. If > GvR> we decide that anything needs to be done in this area I want to > GvR> look at it first, so please don't check anything in yet. > > Did I miss the consensus on inheriting from Exception? I tried to > review the earlier thread, but the early stuff didn't have much on > Exception and the later stuff seemed to be about documentation. So it > must be buried in the middle if it's there :-). > > At any rate, I don't understand why it is helpful for classes to > inherit from exception. There are different views on this, but fact is that we've documented this as a recommendation since class exceptions were first introduced, and I've certainly considered starting to warn about exceptions raised or tested for that are *not* subclasses of Exception. There was some discussion that concluded that it was a useful feature (e.g. because the Exception class defines a standard signature and some standard attributes), and it was even suggested that in the future the traceback could be stored on the exception instance rather than in a separate variable. This would pave the way to deprecating sys.exc_info(). I kind of like that idea, so I am all for striving to enforce this in the future. > I am also curious -- this is off-topic for exceptions -- what the > right way to check for a new-style class is? And what other things > define Py_TPFLAGS_HEAPTYPE? There is no way to distinguish a new-style class, because all type objects can be considered new-style classes. The only thing you could do is checking for "not classic-class". The HEAPTYPE flag is set only for new-style classes that are created dynamically; but eventually I expect that the built-in exceptions will be statically declared new-style classes. --Guido van Rossum (home page: http://www.python.org/~guido/)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4