PEP-308 a "simplicity-first" alternative

Andrew Koenig ark at research.att.com
Wed Feb 12 09:29:24 EST 2003


Tony> For this to be a minor change "else" would have to be a binary
Tony> operator:

Tony> x and y else z  <=>  (x and y) else z
 
Tony> After (x and y) is evaluated, the value is false when either x is
Tony> false, or when x is true and y is false. How is "else" meant to
Tony> distinguish the two falses?

It can't, and that's the problem.  Which means that `x and y else z'
has to be a special syntactic form, and `(x and y) else z' has to be
a syntax error.

-- 
Andrew Koenig, ark at research.att.com, http://www.research.att.com/info/ark




More information about the Python-list mailing list