ANN: PyStream - a C++ stream emulation

Tim Peters tim_one at email.msn.com
Wed Aug 23 00:49:16 EDT 2000


[Grant Griffin]
> As a confessed Perl refugee, I have to admit that a corner of my heart
> grieves for any loss of Python's glorious spareness of constructs,
> but...
>
> Given that 1.6 and 2.0 are virtually 100.0% backward compatible, how do
> these new constructs actually hurt anybody?  If anything, aren't the
> programs that _use_ the new constructs--not the new interpreter that
> provides them--the problem?

Guido never sucked for that kind of argument.  The plain fact is that if a
construct is there, it *will* be used, and then mastering it becomes a
necessity for every Python programmer who isn't off in their own isolated
corner.  So Guido places an extraordinary emphasis (relative to most other
languages designers I've harassed <wink>) on constructs that are easy to
explain.  That doesn't mean obvious at first sight!  Not even "x = 1"
qualifies on those absurd grounds.  It means that it *can* be explained to,
and normal use mastered by, someone with sub- (but not mondo sub-) average
programming competence.  This is why I'm often his first test subject <0.9
wink>.

> (But I'll bet you a dollar you won't write "x = x + 1" very often once
> you've got "x += 1". ;-)

Exactly on target.  Everyone griping about += knows exactly what it does
already, and likely learned its meaning in the first language in which they
saw it after a grueling study of about 60 seconds <0.3 wink>.  Guido knows
what people will like better than they do.  And those who claim not to like
whitespace block structure simply haven't found themselves yet <wink>.

> i've-never-found-myself-inclined-to-write-C-when-i-was-using-a-C++
>    -compiler-<wink>-ly y'rs,

actually-doubt-that-but-not-of-the-stl-authors!-ly y'rs  - tim






More information about the Python-list mailing list