[Python-Dev] Can Python implementations reject semantically invalid expressions? (original) (raw)
Maciej Fijalkowski fijall at gmail.com
Fri Jul 2 08:38:11 CEST 2010
- Previous message: [Python-Dev] Can Python implementations reject semantically invalid expressions?
- Next message: [Python-Dev] Can Python implementations reject semantically invalid expressions?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Fri, Jul 2, 2010 at 12:31 AM, Stefan Behnel <stefan_ml at behnel.de> wrote:
Glyph Lefkowitz, 02.07.2010 06:43:
On Jul 2, 2010, at 12:28 AM, Steven D'Aprano wrote:
This question was inspired by something asked on #python today. Consider it a hypothetical, not a serious proposal.
We know that many semantic errors in Python lead to runtime errors, e.g. 1 + "1". If an implementation rejected them at compile time, would it still be Python? E.g. if the keyhole optimizer raised SyntaxError (or some other exception) on seeing this: def f(): return 1 + "1" instead of compiling something which can't fail to raise an exception, would that still be a legal Python implementation? I'd say "no". Python has defined semantics in this situation: a TypeError is raised. So, would it still be Python if it folded 1 + "1" into raise TypeError() at compile time? Stefan
This question has an easy answer - can you possibly tell the difference?
Cheers, fijal
- Previous message: [Python-Dev] Can Python implementations reject semantically invalid expressions?
- Next message: [Python-Dev] Can Python implementations reject semantically invalid expressions?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]