A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2005-July/055020.html below:

[Python-Dev] Pre-PEP: Exception Reorganization for Python 3.0

[Python-Dev] Pre-PEP: Exception Reorganization for Python 3.0Robert Brewer fumanchu at amor.org
Sat Jul 30 05:07:45 CEST 2005
Brett Cannon wrote:
> New Hierarchy
> =============
> 
> Raisable (new; rename BaseException?)
> +-- CriticalException (new)
>     +-- KeyboardInterrupt
>     +-- MemoryError
>     +-- SystemExit
>     +-- SystemError (subclass SystemExit?)

I'd recommend not subclassing SystemExit--there are too many programs
out there which expect the argument (e.g. sys.exit(3)) to mean something
specific, but that expectation doesn't apply at all to SystemError.

> +-- Exception (replaces StandardError)
>...
>     +-- ControlFlowException (new)

I'd definitely appreciate ControlFlowException--there are a number of
exceptions in CherryPy which should subclass from that. Um, CherryPy
3.0, that is. ;)

>     +-- LookupError (better name?)

SubscriptError, perhaps? But LookupError could become the "I didn't find
obj X in the container you specified" superclass, in which case
LookupError is perfect.

>     +-- TypeError
>         +-- AttributeError (subclassing new)

"Since most attribute access errors can be attributed to an object not
being the type that one expects, it makes sense for AttributeError to
be considered a type error."

Very hmmm. I would have thought it would be a LookupError instead, only
because I favor the duck-typing parts of Python. Making AttributeError
subclass from TypeError leans toward stronger typing models a bit too
much, IMO.

>     +-- WeakReferenceError (rename for ReferenceError)

This also has a LookupError feel to it.

> It has been argued that Raisable is a bad name to use since it is not
> an actual word [python-dev1]_.

Perhaps, but compare http://www.onelook.com/?w=raisable to
http://www.onelook.com/?w=raiseable. The only sources "raiseable" has
going for it are Dictionary.com (which aggregates lots of questionable
sources), Rhymezone, and LookWAYup. I think "raisable" is the clear
winner.


Robert Brewer
System Architect
Amor Ministries
fumanchu at amor.org
More information about the Python-Dev mailing list

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