Should it be arbitrary objects or just subclasses of exception: "It is recommended that user-defined exceptions in new code be derived from Exception, although for backward compatibility reasons, this is not required. Eventually this rule will be tightened."
Can we safely make Exception (and hence all built-in exceptions) a new-style class? This could break user code (even when we don't enforce that exceptions are derived from Exception).
--Guido van Rossum (home page: http://www.python.org/%7Eguido/)