[Python-Dev] Major revision of PEP 348 committed

Brett Cannon bcannon at gmail.com
Mon Aug 8 04:02:30 CEST 2005


On 8/7/05, Nick Coghlan <ncoghlan at gmail.com> wrote:
> Brett Cannon wrote:
> > * SystemExit are the KeyboardInterrupt are the only exceptions *not*
> > inheriting from Exception
> >     + CriticalException has been renamed TerminalException so it is
> > more inline with the idea that the exceptions are meant to terminate
> > the interpreter, not that they are more critical than other exceptions
> 
> I like TerminalException, although TerminatingException may be less ambiguous.
> ("There's nothing wrong with my terminal, you moronic machine!")
> 

Maybe.  But the interpreter is not terminating quite yet; state is
still fine since the exceptions have not reached the top of the stack
if you caught it.  But then "terminal" sounds destined to die, which
is not true either since that only occurs if you catch the exceptions;
"terminating" portrays that the plan is the termination but that it is
not definite.

OK, TerminatingException it is.

> > This version addresses everyone's worries about
> > backwards-compatibility or changes that were not substantive enough to
> > break code.
> 
> Well, I think you said from the start that the forces of
> backwards-compatibility would get you eventually ;)
> 

=)  I should become a pundit for being able to tell what is going to happen.

> > The things I did on my own without thorough discussion is remove
> > ControlFlowException and introduce VMError.
> 
> +1 on the former.
> -1 on the latter.
> 
> Same reasons as Raymond, basically. These exceptions are builtins, so let's
> not add new ones without a strong use case.
> 
> Anyway, this is starting to look pretty good (but then, I thought that a few
> days ago, too).
> 

Yeah, and so did everyone else basically.  While Guido has his "let's
get all excited about a crazy idea, but then scale it back" mentality,
I guess I have the "let's change everything for the better, but then
realize other people actually use this language too".  =)

-Brett


More information about the Python-Dev mailing list