On Mon, 31 Jan 2000, Tim Peters wrote: > [Tim] > >> If I didn't know better <wink>, I'd say there's an actual > >> consensus here: it seems we would all agree to "(if cond then > >> true else false)" spelling. > > [Ka-Ping Yee] > > Actually, i'm afraid i don't. I initially chose the "then/else" > > spelling specifically because "if" flags the eye to the beginning > > of a statement. My line of thinking was, "'then' for expressions, > > 'if' for statements." > > OK, I'm baffled. I probably don't recall your suggestion -- the implication > is that it didn't use the word "if"? If so, I probably read it and assumed > you left out the "if" my mistake <wink>. Yeah, my suggestion was, e.g. def abs(x): return x > 0 then x else -x Might as well summarize the other suggestions so far: return x > 0 ? x else -x return x > 0 ? x : -x return if x > 0: x else -x Have i missed any? Oh, yes, and here is the control group. return x > 0 and x or -x return (x > 0 and [x] or [-x])[0] if x > 0: return x else: return -x > Seriously, "excessively novel" isn't called for here: > *tons* of languages have used if/then/else for this > purpose without difficulty. Yes, you're right about that. > No keyword has been added to Python since "lambda", and you can be certain > Guido will never add another (at least not to Python1) -- this is an > absolute non-starter. Ping, *you* used to know this better than anyone > <wink>. Okay, okay. You probably have a better memory about this than i do. :) Assuming that "then" will never be made a keyword, i would probably go with "x > 0 ? x else -x". "if" seems to shout "statement" too loudly at me, and colons seem too loaded. Another issue with the last suggestion: how do you explain putting a colon after the condition but not after the "else"? -- ?!ng
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4