On Thu, Jul 23, 2020, 9:19 PM Rob Cliffe via Python-ideas
The upholders of the status quo regularly provide gallant
explanations of why "else" is perfectly natural, even intuitive.
The fact is, it isn't. If it were, it wouldn't *need* to be
repeatedly explained by gurus to lesser mortals.
I have used Python for 22 years, and I still cannot remember what else does in a loop for more than a few minutes at a time. It's easy to remember "it has something to do with whether there was a break." But neither direction in that choice yet feels obvious to me.
I've read all the posts in this thread. I watched Raymond's explanation from a talk a few years ago. I've read Guido's explanation. I've read Knuth. I have a graduate degree in humanities and am a professional writer. I'm a native English speaker.
It's still not intuitive to me.
In my own code I just avoid the construct. I reckon I'm +1 on "some better spelling" ... although I manage fine without using it. I rarely see it in the wild, probably because it is confusing.
I can't think of
any other area of Python that needs to be defended so regularly and
so vociferously, nor that very experienced Python programmers
confess they find confusing. Swelp me, someone in this very thread
(Barry) misunderstood it[1]. And suggesting that those of us who
don't find it clear lack skill in English is just plain insulting.
YMMV, but the only way I can grok it when I see it is to mentally
translate "else" to "if no break". This is mental effort that would
be spared or at least diminished if it were spelt in a more obvious
way in the first place.