Re: [Python-ideas] Statements vs Expressions... why?

On Fri, 2008-09-12 at 14:03 -0400, Mike Meyer wrote:
On Fri, 12 Sep 2008 08:55:51 -0700 Cliff Wells <cliff@develix.com> wrote:
It may be grossly oversimplified, but I think ultimately the process ends this way.
I'm claiming that the global case is an inevitable conclusion of repeatedly catering to the individual case.
I won't disagree that Python is still a long way from that point. I also want absolutely to distance myself from any claim that Python will one day become obsolete or even lose a single user because of this. First of all because it's flamebait and secondly because I don't believe it to be true. What I will claim is that the growing the language in such a way is not doing a favor to its users (even if they might think so for their particular extension). I don't think any of us disagree with that. Of course it's mildly ironic that I'm being told the same thing about my proposal, but what I am trying to convey is that it's my belief that my one modification helps eliminate the need for dozens of others.
Yes, but we want to keep watershed instances like these to an absolute minimum. I think removing the redundant (and less flexible) variations that listcomp now subsumes is a good thing. What I'm saying is "let's do it again". Except what would be subsumed isn't just a handful of functions, but rather a whole class of existing and future language extensions.
Absolutely, which is why I've never proposed it. It would fundamentally alter the visual appearance of the language and ultimately isn't necessary anyway.
True, I was thinking more of Perl when that word popped out of my keyboard. However, I think that there is a fundamental *logical* inconsistency in Python. The language consistently adheres to this inconsistency =) but it's there nonetheless. This was my motivation for attempting to demonstrate that the two forms of "if" currently in Python (statement and operator) could be logically combined into one if the restrictions on the former were lifted (see below).
Ah, but I do: if cond: block vs expr if cond Here we have two forms of the *very same* logical construction. A programmer must select one or the other based on *context*. This is my definition of inconsistent (although it's roots lie in a deeper inconsistency, namely the distinction between expressions and statements). Regards, Cliff

On Fri, Sep 12, 2008 at 2:34 PM, Cliff Wells <cliff@develix.com> wrote:
By definition, anything more complex than a turing machine contains these redundancies (which you call inconsistencies). Clearly, we all use languages with a great number of them, so your notion that they're inherently bad is disproven. Which isn't to say they're inherently good either.. they do have a cost, increasing the mental load of the programmer. That suggests there's a tradeoff involved. Asking about the tradeoffs would be a much more productive discussion. -- Adam Olsen, aka Rhamphoryncus

On Fri, Sep 12, 2008 at 2:34 PM, Cliff Wells <cliff@develix.com> wrote:
By definition, anything more complex than a turing machine contains these redundancies (which you call inconsistencies). Clearly, we all use languages with a great number of them, so your notion that they're inherently bad is disproven. Which isn't to say they're inherently good either.. they do have a cost, increasing the mental load of the programmer. That suggests there's a tradeoff involved. Asking about the tradeoffs would be a much more productive discussion. -- Adam Olsen, aka Rhamphoryncus
participants (2)
-
Adam Olsen
-
Cliff Wells