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

Josiah Carlson josiah.carlson at gmail.com
Thu Sep 11 03:30:48 CEST 2008


On Wed, Sep 10, 2008 at 6:14 PM, Cliff Wells <cliff at develix.com> wrote:
> On Wed, 2008-09-10 at 17:16 -0600, Adam Olsen wrote:
[snip]
>> They're the use-case you need to justify
>> against the substantial changes you propose.
>
> I guess I don't see it as substantial to people who don't wish to use it
> (although it's quite substantial to people who do).  Overall, I think
> this is why I feel the change doesn't require a huge amount of
> justification: you aren't *forced* to use it, but if you need it, it's
> huge.  It doesn't impose any significant stylistic change on people who
> prefer the imperative style, but it opens vast doors for people wishing
> to approach problems from a functional path.

Once language syntax is added to, changed, etc., it's very difficult
to remove those additions, changes, etc., even when the feature is
rarely used, ugly, and generally a bad idea (see back-quotes `x` for
repr(x) ).  This may not seem like a big deal to you, because you want
this feature, but for the rest of us who have little (arguably no) use
for the feature, adding semantics to syntax, or adding syntax =
additional mental overhead; never mind the additional sections in the
tutorial where we have to explain why this *particular* special case
of a DSL was special enough to break the rules of explicit is better
than implicit (why should a multi-line if statement implicitly return
something in one place but not in another?)

I know, "it's just one little change".  I've made the argument myself.
 But that doesn't mean that my idea was a good idea (it wasn't), nor
does it mean that your current idea is (I think everyone in this
thread except you would agree that it's a bad idea).

Before continuing on in defending your proposal here, I suggest you
try comp.lang.python .  If you can't get a dozen people to agree that
it's a good idea, or if (like here) the only replies are negative (or
even if the majority of them are), then I would suggest you drop it.

 - Josiah



More information about the Python-ideas mailing list