Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Python Success stories

6 views
Skip to first unread message

azrael

unread,
Apr 22, 2008, 6:25:59 AM4/22/08
to
Hy guys,
A friend of mine i a proud PERL developer which always keeps making
jokes on python's cost.

Please give me any arguments to cut him down about his commnets
like :"keep programing i python. maybe, one day, you will be able to
program in VisualBasic"

This hurts. Please give me informations about realy famous
aplications.

Diez B. Roggisch

unread,
Apr 22, 2008, 6:34:48 AM4/22/08
to
azrael schrieb:

This isn't worth too much, but nontheless:

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Klick on Perl & Python respectively to see who's going to need to use
something else some day.

But the real problem is not your friend - it's you. He hurts you because
you let him. Stop getting mad about that he teases you.

Diez

Marco Mariani

unread,
Apr 22, 2008, 6:41:41 AM4/22/08
to
azrael wrote:

> Please give me any arguments to cut him down about his commnets
> like :"keep programing i python. maybe, one day, you will be able to
> program in VisualBasic"
>
> This hurts. Please give me informations about realy famous
> aplications.

He's joking. Perl is a dysfunctional language and its users need a
strong sense of humor to go on, day after day.

Max M

unread,
Apr 22, 2008, 7:18:58 AM4/22/08
to pytho...@python.org
azrael skrev:

> Please give me any arguments to cut him down about his commnets
> like :"keep programing i python. maybe, one day, you will be able to
> program in VisualBasic"

When I started writing in Python in the nineties there was a lot of
tech-media coverage of Perl. Python was always mentioned as a rival to
Perl in those articles.

These days Python is mentioned in a lot of tech-articles. Perl is never
mentioned as a rival in those articles. Other languages like Ruby are.


Ok I am Python biased, but I don't see anything happen on the Perl front
anymore. It has simply gone quiet.


--

hilsen/regards Max M, Denmark

http://www.mxm.dk/
IT's Mad Science

azrael

unread,
Apr 22, 2008, 7:53:38 AM4/22/08
to
Which big aplications are written in python. I see its development,
But i can't come up with a big name. I know that there are a lot of
companys using python, but is there anythong big written only in
python. I want him to fuck of with his perl once and for all time

Wesley Brooks

unread,
Apr 22, 2008, 8:03:02 AM4/22/08
to azrael, pytho...@python.org
http://panela.blog-city.com/python_at_google_greg_stein__sdforum.htm

Google big enough?

...or look at the companies on the "NASA uses Python... ...so does:"
box on the top (nearly top any how!) right of http://www.python.org/

> --
> http://mail.python.org/mailman/listinfo/python-list
>

Chris

unread,
Apr 22, 2008, 8:06:03 AM4/22/08
to

Bruno Desthuilliers

unread,
Apr 22, 2008, 8:58:00 AM4/22/08
to
azrael a écrit :

> Hy guys,
> A friend of mine i a proud PERL developer which always keeps making
> jokes on python's cost.

s/proud/stupid/

> Please give me any arguments to cut him down about his commnets
> like :"keep programing i python. maybe, one day, you will be able to
> program in VisualBasic"
>
> This hurts. Please give me informations about realy famous
> aplications.

Don't let cretins hurt you. One of my best friends who is a die-hard
Perl addict really loves Python too, and finds this kind of pissing
contests more than stupid.

George Sakkis

unread,
Apr 22, 2008, 9:33:40 AM4/22/08
to
On Apr 22, 6:34 am, "Diez B. Roggisch" <de...@nospam.web.de> wrote:
> azrael schrieb:
>
> > Hy guys,
> > A friend of mine i a proud PERL developer which always keeps making
> > jokes on python's cost.
>
> > Please give me any arguments to cut him down about his commnets
> > like :"keep programing i python. maybe, one day, you will be able to
> > program in VisualBasic"
>
> > This hurts. Please give me informations about realy famous
> > aplications.
>
> This isn't worth too much, but nontheless:
>
> http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
>
> Klick on Perl & Python respectively to see who's going to need to use
> something else some day.

One more limited worth datapoint:

http://www.google.com/trends?q=python+programming%2C+perl+programming&ctab=0

Carl Banks

unread,
Apr 22, 2008, 9:38:10 AM4/22/08
to


Let me tell you a little story to let you know how you should act in
situations like this. Some of you might have heard it before.
Apologies if it's a bit long.

There was once a young man who absolutely loved clowns. He always
dreamed of meeting a clown, and laughing at their silly antics, but he
lived in a rural small town and never got to see any.

Then one day when the circus came to town. The young man was
unbelievably excited, he was finally going to be able to see a clown!
He camped out at the ticket booth and was the first in line to get a
ticket, because he so loved clowns that he wanted to sit right up
front.

The yound man never had a better time in his life, watching all the
clowns and their funny tricks. Then a young talented clown came out
to work the crowd. He went right up to the young man, who couldn't
believe his luck: a clown was doing his act with him!

The clown asked the man, "Are you front end of an ass?"

The young man said, "Um, no."

Then the clown asked the man, "Are you the rear end of an ass?"

The young man, a little confused, said, "No."

Then the clown, with nearly perfect comedic timing, said, "Then you
must be no end of an ass!"

The crowd roared with laughter, but the young man was crushed. He
couldn't believe that the clowns he adored so much could be so mean.

He went home from the circus utterly distraught and humiliated, and
soon fell into a deep depression. He eventually lost his job, then
his home. He became a vagrant and spent his days living on the
streets.

The years passed by.

One day, the now old man saw that the circus was coming back to town.
And not only that, but the same clown who had humiliated him years ago
was headlining the circus. It brought back terrible and long-
suppressed memories, which he told to a social worker at the homeless
shelter he was staying at.

The social worker felt very moved by the old man's story, and told the
old man, "You know, maybe you could overcome with your problems if you
could face that clown again and give him his comeupance."

The old man was horrified. After the incident he had developed an
intense fear of clowns. Yet he somehow felt the social worker was
right. "I'd like to do that," he said, "but what if the clown
humilates me again?"

"Don't worry," said the social worker, "I have the perfect retort."

So the social worker and the old man bought front row seats to the
circus. Within a few minutes, the old man was enjoying himself
immensely. It was the best therapy he'd ever had, and the old man
felt that after so many years he would finally be able to put his life
back together.

Until the final act.

The same clown who had humiliated the old man many years before was
now an old veteran on his final tour. The clown went right up to the
old man and began to work the same routine.

("Don't worry," whispered the social worker to he old man as the clown
approached, "I have perfect retort.")

The clown asked the old man, "Are you front end of an ass?"

The old man said, "No."

Then the clown asked the old man, "Are you the rear end of an ass?"

The old man, positively scared, meekly said, "No."

Then the clown, with utterly perfect comedic timing, said, "Then you
must be no end of an ass!"

The crowd roared with laughter. The man was humiliated again. But
the social winked at him, indicating that he would soon give the clown
the perfect retort. The old man couldn't wait to hear what it was.

Suddenly the social worker stood up and shouted, "Hey clown!"

The crowd hushed, and clown whirled around to look at him.

"F**k you!"

(It makes even more sense when you consider that Perl programmers
pretty much are clowns.)

Carl Banks

Ben Finney

unread,
Apr 22, 2008, 10:02:47 AM4/22/08
to
Carl Banks <pavlove...@gmail.com> writes:

> Let me tell you a little story to let you know how you should act in
> situations like this. Some of you might have heard it before.
> Apologies if it's a bit long.

I don't know if I've heard it before; it's rather unmemorable.

What lesson is it intended to teach, other than that "Fuck you" is
somehow a "retort"? I can't see that improving too many situations.

--
\ "Probably the toughest time in anyone's life is when you have |
`\ to murder a loved one because they're the devil." -- Emo |
_o__) Philips |
Ben Finney

Paul Melis

unread,
Apr 22, 2008, 9:54:42 AM4/22/08
to azrael

Not really "big" in terms of lines of code, but definitely well-known
and widespread: the official BitTorrent client is written in Python (and
has been since the beginning I believe).

Regards,
Paul

Istvan Albert

unread,
Apr 22, 2008, 10:22:13 AM4/22/08
to
On Apr 22, 6:25 am, azrael <jura.gro...@gmail.com> wrote:

> A friend of mine i a proud PERL developer which always keeps making
> jokes on python's cost.

> This hurts. Please give me informations about realy famous
> aplications.

you could show him what Master Yoda said when he compared Python to
Perl

http://www.personal.psu.edu/iua1/pythonvsperl.htm

i.

Nikita the Spider

unread,
Apr 22, 2008, 10:54:00 AM4/22/08
to
In article
<7e595409-be62-4b8c...@c65g2000hsa.googlegroups.com>,
azrael <jura....@gmail.com> wrote:

Why are either of you so emotionally attached to the tools you use?

I don't know your friend, but my guess is that he's not interested in a
logical argument, so he won't be impressed even if you claim that God
himself wrote the Universe in Python. I think he enjoys saying this
stuff simply because you react to it. It's pretty sad that he can't find
something better to do with his time.

If Python works for you and Perl for your friend, you can each keep
using the tool you prefer and be happy about it.

In the meantime you might want to look for some friends that don't find
your anger and frustration entertaining.

--
Philip
http://NikitaTheSpider.com/
Whole-site HTML validation, link checking and more

Max Erickson

unread,
Apr 22, 2008, 11:19:27 AM4/22/08
to pytho...@python.org
Ben Finney <bignose+h...@benfinney.id.au> wrote:

> Carl Banks <pavlove...@gmail.com> writes:
>
>> Let me tell you a little story to let you know how you should
>> act in situations like this. Some of you might have heard it
>> before. Apologies if it's a bit long.
>
> I don't know if I've heard it before; it's rather unmemorable.
>
> What lesson is it intended to teach, other than that "Fuck you"
> is somehow a "retort"? I can't see that improving too many
> situations.
>

I got something like "Don't waste your life worrying about what some
damn clown said" out of it.

You don't even need to swear at the clown to make it work.


max

Banibrata Dutta

unread,
Apr 22, 2008, 11:26:45 AM4/22/08
to pytho...@python.org
"F**k you" -- is generally an indication of "creativity blackout"
followed by "frustration". Not exactly a clever retort.


On 4/22/08, Max Erickson <maxer...@gmail.com> wrote:


> Ben Finney <bignose+h...@benfinney.id.au> wrote:
>
> > Carl Banks <pavlove...@gmail.com> writes:
> >
> >> Let me tell you a little story to let you know how you should
> >> act in situations like this. Some of you might have heard it
> >> before. Apologies if it's a bit long.
> >
> > I don't know if I've heard it before; it's rather unmemorable.
> >
> > What lesson is it intended to teach, other than that "Fuck you"
> > is somehow a "retort"? I can't see that improving too many
> > situations.
> >
>

> I got something like "Don't waste your life worrying about what some
> damn clown said" out of it.
>
> You don't even need to swear at the clown to make it work.
>
>
> max
>

> --
> http://mail.python.org/mailman/listinfo/python-list
>


--
regards,
Banibrata
http://www.linkedin.com/in/bdutta

GHUM

unread,
Apr 22, 2008, 11:35:47 AM4/22/08
to
> Which big aplications are written in python. I see its development,

There are no big applications written in Python.

Big applications are written in JAVA or COBOL or C# or other legacy
programming systems.

If you programm in Python, your applications become quite small. Only
frameworks in Python are big.

best wishes

Harald


Join us @ EuroPython 2008 in Vilnius to have more fun with Python
Submit your talk NOW
www.europython.org

Gabriel Genellina

unread,
Apr 22, 2008, 11:55:58 AM4/22/08
to pytho...@python.org
En Tue, 22 Apr 2008 07:34:48 -0300, Diez B. Roggisch <de...@nospam.web.de> escribió:
> azrael schrieb:

>> A friend of mine i a proud PERL developer which always keeps making
>> jokes on python's cost.
>>
>> Please give me any arguments to cut him down about his commnets
>> like :"keep programing i python. maybe, one day, you will be able to
>> program in VisualBasic"
>>
>> This hurts. Please give me informations about realy famous
>> aplications.
>
> This isn't worth too much, but nontheless:
>
> http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Also, you can enter the Python main site, on the right and very prominently you have a link to many successful stories: http://www.python.org/about/success/

> But the real problem is not your friend - it's you. He hurts you because
> you let him. Stop getting mad about that he teases you.

I agree.

--
Gabriel Genellina

D'Arcy J.M. Cain

unread,
Apr 22, 2008, 12:10:06 PM4/22/08
to GHUM, pytho...@python.org
On Tue, 22 Apr 2008 08:35:47 -0700 (PDT)
GHUM <haraldar...@gmail.com> wrote:
> > Which big aplications are written in python. I see its development,
>
> There are no big applications written in Python.
>
> Big applications are written in JAVA or COBOL or C# or other legacy
> programming systems.
>
> If you programm in Python, your applications become quite small. Only
> frameworks in Python are big.

So the fact that there are no big applications written in Python IS the
success story.

--
D'Arcy J.M. Cain <da...@druid.net> | Democracy is three wolves
http://www.druid.net/darcy/ | and a sheep voting on
+1 416 425 1212 (DoD#0082) (eNTP) | what's for dinner.

s0s...@gmail.com

unread,
Apr 22, 2008, 12:32:36 PM4/22/08
to

Those would be insulting statements, but only if he wouldn't be a Perl
programmer. Everyone knows Perl's best days are long gone. Perl is not
a competent language anymore. I bet your friend is a system
administrator or something like that, because the only use for Perl is
writing quick-and-dirty scripts, and that's something that sysadmins
do the whole day.

Anyway, seeing that nobody has posted on the "big applications"
matter, here are some examples: Zope ( http://www.zope.org ), Medusa
( http://www.nightmare.com/medusa ), Grail ( http://grail.sourceforge.net
).

On the "Python vs. Perl" matter, well, just search "Python Perl" on
Google or some other search engine, you'll literally find nothing but
pages talking about how Python is better than Perl.

On the other hand, I do admit that there's no other language better
than Perl to write a 3-10 line long program. In those cases, the Perl
version will not only be smaller than the C version, but even smaller
than the Python version. This is mostly due to Perls default variables
and "magic" events (like reading a line of a file directly into $_
when you're doing while (<FILE>) {...}, or automatically converting
between integer/string or scalar/list depending on the operators and
context ).

But a competent developer won't be writing such small scripts, unless,
as I said, you're a sysadmin or something like that. Otherwise,
there's no reason to use something as ugly and unconventional as Perl.

Paul Boddie

unread,
Apr 22, 2008, 12:38:26 PM4/22/08
to
On 22 Apr, 16:02, Ben Finney <bignose+hates-s...@benfinney.id.au>
wrote:

>
> What lesson is it intended to teach, other than that "Fuck you" is
> somehow a "retort"? I can't see that improving too many situations.

It isn't supposed to teach anything: it's a joke! It'd be more
relevant (yet somewhat surreal if detached from this particular
context) if it ended with the social worker saying...

"Hey clown! What happened to Perl 6?"

Paul

Jérémy Wagner

unread,
Apr 22, 2008, 12:50:54 PM4/22/08
to
Sure. Python is more readable than Perl, though I have found Python
to have a weird behavior regarding this little issue :

How can you explain that Python doesn't support the ++ opeator,
whereas at the same time it does support the += operator ???

No python developer I know has been able to answer that.

Istvan Albert a écrit :

Paul Hankin

unread,
Apr 22, 2008, 2:09:55 PM4/22/08
to
On Apr 22, 5:50 pm, Jérémy Wagner <jeremy.wag...@laposte.net> wrote:
> Sure. Python is more readable than Perl, though I have found Python
> to have a weird behavior regarding this little issue :
>
> How can you explain that Python doesn't support the ++ opeator,
> whereas at the same time it does support the += operator ???
>
> No python developer I know has been able to answer that.

Because ++ is of limited use and has poor readability?

'x++' vs 'x += 1' saves 3 characters and is less readable.

'my_long_variable += expression' vs 'my_long_variable =
my_long_variable + expression' saves a lot of characters and is more
readable, because it avoids the duplication of the variable name. When
my_long_variable is a more complex term (perhaps
my_long_variable[some_long_expression]) it's even better.

Plus you get the useful update-in-place behaviour when the left-hand-
side of the += expression is a list.

--
Paul Hankin

Carl Banks

unread,
Apr 22, 2008, 2:53:25 PM4/22/08
to
On Apr 22, 12:50 pm, Jérémy Wagner <jeremy.wag...@laposte.net> wrote:
> Sure. Python is more readable than Perl, though I have found Python
> to have a weird behavior regarding this little issue :
>
> How can you explain that Python doesn't support the ++ opeator,
> whereas at the same time it does support the += operator ???


Because "Features A and B are in language X. Python adds Feature A.
Therefore Python must also add Feature B (or it'll be weird)" is not
valid logic.


Carl Banks

Gabriel Genellina

unread,
Apr 22, 2008, 3:35:27 PM4/22/08
to pytho...@python.org
En Tue, 22 Apr 2008 13:50:54 -0300, Jérémy Wagner <jeremy...@laposte.net> escribió:

> Sure. Python is more readable than Perl, though I have found Python
> to have a weird behavior regarding this little issue :
>
> How can you explain that Python doesn't support the ++ opeator,
> whereas at the same time it does support the += operator ???
>
> No python developer I know has been able to answer that.

Because Python doesn't follow the "boxed variables" model. In other languages i++ changes the "value" stored inside the box "i", but the box itself (the variable) is still the same. Python doesn't have boxes, it has names that refer to objects. For all builtin numeric types, i += 1 creates a *new* object with the resulting value and makes the name "i" refer to this new object.
i++ would be confusing because it looks like a mutating operation over i, but in fact it would be an assignment.

--
Gabriel Genellina

Mike Hansen

unread,
Apr 22, 2008, 4:12:07 PM4/22/08
to

Sage ( http://www.sagemath.org ) is a pretty large Python computer
algebra system ( about 150,000 unique lines of Python and 75,000
unique lines of Cython as a rough estimate). Python turned out to be
an _excellent_ language do this in since it allows for quick
development time for many things that aren't speed dependent while
allowing a seemless transition to fast code with Cython.

--Mike

Message has been deleted

Ivan Illarionov

unread,
Apr 22, 2008, 5:02:09 PM4/22/08
to
On 22 апр, 14:25, azrael <jura.gro...@gmail.com> wrote:
[....]

> This hurts. Please give me informations about realy famous
> aplications.

What do you mean by "really famous"?

Information is here:
http://www.python.org/about/quotes/

Are YouTube and Google famous enough?

--
Ivan

dimitri pater

unread,
Apr 22, 2008, 6:52:20 PM4/22/08
to pytho...@python.org
http://code.google.com/appengine/docs/whatisgoogleappengine.html

2008/4/22 Ivan Illarionov <ivan.il...@gmail.com>:

> --
> http://mail.python.org/mailman/listinfo/python-list

--
---
You can't have everything. Where would you put it? -- Steven Wright
---
please visit www.serpia.org

Steve Holden

unread,
Apr 23, 2008, 12:33:17 AM4/23/08
to pytho...@python.org
azrael wrote:
> Hy guys,
> A friend of mine i a proud PERL developer which always keeps making
> jokes on python's cost.
>
> Please give me any arguments to cut him down about his commnets
> like :"keep programing i python. maybe, one day, you will be able to
> program in VisualBasic"
>
> This hurts. Please give me informations about realy famous
> aplications.
> --
> http://mail.python.org/mailman/listinfo/python-list
>
Ask him why, if Perl is so great, it isn't one of the Google-approved
languages for internal use, when Python *is*.

Ask him how it feels to program in a wrote-only language.

Challenge him to a dual with dead kippers at twenty paces.

regards
Steve
--
Steve Holden +1 571 484 6266 +1 800 494 3119
Holden Web LLC http://www.holdenweb.com/

Steve Holden

unread,
Apr 23, 2008, 12:41:17 AM4/23/08
to Nikita the Spider, pytho...@python.org
Nikita the Spider wrote:
> In article
> <7e595409-be62-4b8c...@c65g2000hsa.googlegroups.com>,
> azrael <jura....@gmail.com> wrote:
>
>> Which big aplications are written in python. I see its development,
>> But i can't come up with a big name. I know that there are a lot of
>> companys using python, but is there anythong big written only in
>> python. I want him to fuck of with his perl once and for all time
>
> Why are either of you so emotionally attached to the tools you use?
>
> I don't know your friend, but my guess is that he's not interested in a
> logical argument, so he won't be impressed even if you claim that God
> himself wrote the Universe in Python. I think he enjoys saying this
> stuff simply because you react to it. It's pretty sad that he can't find
> something better to do with his time.
>
It's even sadder that he doesn't need to.

[...]

Steve Holden

unread,
Apr 23, 2008, 12:41:17 AM4/23/08
to pytho...@python.org, pytho...@python.org
Nikita the Spider wrote:
> In article
> <7e595409-be62-4b8c...@c65g2000hsa.googlegroups.com>,
> azrael <jura....@gmail.com> wrote:
>
>> Which big aplications are written in python. I see its development,
>> But i can't come up with a big name. I know that there are a lot of
>> companys using python, but is there anythong big written only in
>> python. I want him to fuck of with his perl once and for all time
>
> Why are either of you so emotionally attached to the tools you use?
>
> I don't know your friend, but my guess is that he's not interested in a
> logical argument, so he won't be impressed even if you claim that God
> himself wrote the Universe in Python. I think he enjoys saying this
> stuff simply because you react to it. It's pretty sad that he can't find
> something better to do with his time.
>

Ben Finney

unread,
Apr 23, 2008, 12:43:21 AM4/23/08
to
Steve Holden <st...@holdenweb.com> writes:

> Challenge him to a dual with dead kippers at twenty paces.

Please, have some dignity!

Challenge him to a duel with live kippers. Live, *rabid* kippers. With
frickin' laser beams on their heads.

--
\ "A man's only as old as the woman he feels." -- Groucho Marx |
`\ |
_o__) |
Ben Finney

Roy Smith

unread,
Apr 23, 2008, 12:56:37 AM4/23/08
to
In article <mailman.37.12089252...@python.org>,
Steve Holden <st...@holdenweb.com> wrote:

> Challenge him to a dual with dead kippers at twenty paces.

You gotta be careful about stuff like this. You might slap him with a dead
kipper only to discover he's got a dead camel in his pocket.

Of course, there's always http://en.wikipedia.org/wiki/Wikipedia:Trout

Steve Holden

unread,
Apr 23, 2008, 12:57:25 AM4/23/08
to pytho...@python.org
Ben Finney wrote:
> Steve Holden <st...@holdenweb.com> writes:
>
>> Challenge him to a dual with dead kippers at twenty paces.
>
> Please, have some dignity!
>
> Challenge him to a duel with live kippers. Live, *rabid* kippers. With
> frickin' laser beams on their heads.
>
I like your style.

Though considering what it takes to kipper a herring, I'd be very
surprised if there *was* any such thing as a live kipper. With or
without laser beam.

Steve Holden

unread,
Apr 23, 2008, 1:40:58 AM4/23/08
to pytho...@python.org

Damn, pilchards, that was it!

Mark Wooding

unread,
Apr 23, 2008, 5:12:24 AM4/23/08
to
Gabriel Genellina <gags...@yahoo.com.ar> wrote:

> Because Python doesn't follow the "boxed variables" model.

Be careful here. `Boxed types' or `boxed objects' is a technical term
essentially meaning `heap-allocated objects, probably with reference
semantics', which Python most definitely does use -- so this almost
means the opposite of what you're talking about.

Python has the same basic data model as Lisp, Ruby, Smalltalk and many
other languages: a variable (or a `slot' in a compound data-object)
contains a reference to value; values can referred to by many variables.
Assignment simply copies these references around. This means that it's
easy to end up sharing the same object between lots of variables (or
structures).

Contrast this to the model used by C, Pascal and other `traditional'
compiled languages, where a variable is actually a container for a
value, and assignment is a copying operation rather than a sharing
operation.

> In other languages i++ changes the "value" stored inside the box "i",
> but the box itself (the variable) is still the same. Python doesn't
> have boxes, it has names that refer to objects. For all builtin
> numeric types, i += 1 creates a *new* object with the resulting value
> and makes the name "i" refer to this new object.

Note that `+=' in Python is inconsistent! For numeric types (and other
immutable types, such as strings or tuples), `VAR += VALUE' means the
same thing as `VAR = VAR + VALUE' (ignoring tedious issues of multiple
evaluation of subexpressions -- e.g., subscripts -- in VAR), which as
mentioned above causes a new reference to be stored in VAR, referring to
the object which was computed by adding VALUE to the object previously
referred to by VAR. For lists, it does not do this: instead, it extends
the list in place, putting new values on the end of it.

(This is one of the language's few obvious inconsistencies, and probably
a reasonably justifiable one; but it's still worth pointing out.)

To be honest, I don't see any particular reason why `++' is any more of
a mutation operation than `+=' is in the languages that define it;
Python is actually one of the few to define one but not the other. (The
other one I can think of is Acorn's BBC BASIC, for whatever that's
worth; it too lacks `++'.) But then again, one of the main conceptual
advantages of `++' as an operator is that it has both pre- and post-
increment variants, which are useful when used as part of a wider
expression. This won't hold in Python, since assignments (which `++'
assuredly ought to be) aren't allowed as subexpressions anyway. So the
value of `++' would be limited to providing an abbreviation over the
already quite short `+= 1'.

That's not quite true, in fact: it might be useful to define other kinds
of incrementing for specialist types, but I can't think of any obvious
examples off the top of my head.

This argument doesn't apply to `+=' which has the benefit of saving you
from having to type the VAR twice (which is nontrivial if VAR contains
complex subexpressions) and -- more significantly -- saves a reader from
having to check whether VAR and VAR' actually match in `VAR = VAR' +
VALUE' and ensures only single evaluation of subexpressions of VAR.
None of this applies to `++'. So `++' is not a feature I find myself
sorely missing in Python.

-- [mdw]

Philipp Pagel

unread,
Apr 23, 2008, 6:47:01 AM4/23/08
to
azrael <jura....@gmail.com> wrote:
> A friend of mine i a proud PERL developer which always keeps making
> jokes on python's cost.

There is only one sane way to deal with this situation: You need a
common enemy. Java comes to mind ;-)

cu
Philipp

--
Dr. Philipp Pagel
Lehrstuhl f. Genomorientierte Bioinformatik
Technische Universität München
http://mips.gsf.de/staff/pagel

Paul Boddie

unread,
Apr 23, 2008, 7:43:56 AM4/23/08
to
On 23 Apr, 11:12, Mark Wooding <m...@distorted.org.uk> wrote:

> Gabriel Genellina <gagsl-...@yahoo.com.ar> wrote:
> > Because Python doesn't follow the "boxed variables" model.
>
> Be careful here. `Boxed types' or `boxed objects' is a technical term
> essentially meaning `heap-allocated objects, probably with reference
> semantics', which Python most definitely does use -- so this almost
> means the opposite of what you're talking about.

I think Gabriel meant "variables as boxes" - the classic description
of variables in "old school" programming languages, which is in
contrast to the "variables as labels" model used by Python.

[...]

> This won't hold in Python, since assignments (which `++'
> assuredly ought to be) aren't allowed as subexpressions anyway.

This syntactic note is probably one of the biggest arguments against
it, yes, since many of the benefits it has in C would be absent in
Python.

[...]

> That's not quite true, in fact: it might be useful to define other kinds
> of incrementing for specialist types, but I can't think of any obvious
> examples off the top of my head.

Well, as I recall, data structures in C++ (such as iterators) often
use the pre/post-increment/decrement operators as shorthand, arguably
reflecting the "pointer arithmetic" heritage of the C family of
languages. It would be pure sugar in Python, though.

Paul

Reedick, Andrew

unread,
Apr 23, 2008, 9:50:00 AM4/23/08
to pytho...@python.org
> -----Original Message-----
> From: python-list-bounces+jr9445=att...@python.org [mailto:python-
> list-bounces+jr9445=att...@python.org] On Behalf Of azrael
> Sent: Tuesday, April 22, 2008 6:26 AM
> To: pytho...@python.org
> Subject: Python Success stories
>
> Hy guys,

> A friend of mine i a proud PERL developer which always keeps making
> jokes on python's cost.
>
> Please give me any arguments to cut him down about his commnets
> like :"keep programing i python. maybe, one day, you will be able to
> program in VisualBasic"
>
> This hurts. Please give me informations about realy famous
> aplications.


IIRC, Python is used in games like Eve Online (SciFi MMO) and Vampire:
Bloodlines (RPG.) Years later, a dedicated fan is still fixing/updating
the Bloodlines python scripts that control the dialogue and scripted
events.

OTOH, I use Perl over Python when it comes to Windows COM scripts due to
finding a typelib that Python just refused to load. *shrug*

Perl, Python, and your friend are tools. Use them appropriately for the
given situation.

Cristina Yenyxe González García

unread,
Apr 23, 2008, 10:26:08 AM4/23/08
to pytho...@python.org
2008/4/23, Reedick, Andrew <jr9...@att.com>:

>
> IIRC, Python is used in games like Eve Online (SciFi MMO) and Vampire:
> Bloodlines (RPG.) Years later, a dedicated fan is still fixing/updating
> the Bloodlines python scripts that control the dialogue and scripted
> events.
>

Now that you mention it, Python was also used in the Star Wars:
Knights of the Old Republic (KotOR) saga. You can even search the
scripts across the disc and take a look at hilarious code comments
like "this works but I don't know why" :D

cokof...@gmail.com

unread,
Apr 23, 2008, 11:15:12 AM4/23/08
to
Civilisation 4 uses Python everywhere and is the main tool used by
Modders of the game.

Bob Woodham

unread,
Apr 23, 2008, 2:08:16 PM4/23/08
to
On 2008-04-22, Paul Hankin <paul....@gmail.com> wrote:
> On Apr 22, 5:50 pm, Jérémy Wagner <jeremy.wag...@laposte.net> wrote:
>> Sure. Python is more readable than Perl, though I have found Python
>> to have a weird behavior regarding this little issue :
>>
>> How can you explain that Python doesn't support the ++ opeator,
>> whereas at the same time it does support the += operator ???
>>
>> No python developer I know has been able to answer that.
>
> Because ++ is of limited use and has poor readability?
>
> 'x++' vs 'x += 1' saves 3 characters and is less readable.

In addition, the statement

x = x++;

has unspecified behaviour in C. That is, it is not specified
whether the value of x after execution of the statement is the
old value of x or one plus the old value of x.

Jon Ribbens

unread,
Apr 23, 2008, 9:16:51 PM4/23/08
to
On 2008-04-23, Mark Wooding <m...@distorted.org.uk> wrote:
> Python is actually one of the few to define one but not the other. (The
> other one I can think of is Acorn's BBC BASIC, for whatever that's
> worth; it too lacks `++'.)

You should've added it in Termite Basic then :-p

AlFire

unread,
Apr 23, 2008, 9:18:10 PM4/23/08
to
Bob Woodham wrote:

>
> x = x++;
>
> has unspecified behaviour in C.

what about C++

AlFire

unread,
Apr 23, 2008, 9:19:41 PM4/23/08
to

AlFire

unread,
Apr 23, 2008, 9:19:41 PM4/23/08
to Cristina Yenyxe González García, pytho...@python.org
Cristina Yenyxe González García wrote:

and Shrek 3 http://www.linuxjournal.com/article/9653

--
a.

Istvan Albert

unread,
Apr 23, 2008, 9:56:27 PM4/23/08
to
On Apr 23, 2:08 pm, Bob Woodham <wood...@cs.ubc.ca> wrote:

> x = x++;
>
> has unspecified behaviour in C. That is, it is not specified
> whether the value of x after execution of the statement is the
> old value of x or one plus the old value of x.

unspecified means that the result could be anything: old value, old
value+1, -2993882, "trallalla", core dump, stack overflow etc...

in Java the behavior is specified, but many might find the result
counterintuitive:

int x = 0;
x = x++;
System.out.println(x);

prints 0, if I recall it correctly the ++ mutates after the assignment
takes place, therefore it increments the old value that then summarily
discarded.

i.


Gabriel Genellina

unread,
Apr 23, 2008, 11:39:10 PM4/23/08
to pytho...@python.org
En Wed, 23 Apr 2008 08:43:56 -0300, Paul Boddie <pa...@boddie.org.uk>
escribió:

> On 23 Apr, 11:12, Mark Wooding <m...@distorted.org.uk> wrote:
>> Gabriel Genellina <gagsl-...@yahoo.com.ar> wrote:
>> > Because Python doesn't follow the "boxed variables" model.
>>
>> Be careful here. `Boxed types' or `boxed objects' is a technical term
>> essentially meaning `heap-allocated objects, probably with reference
>> semantics', which Python most definitely does use -- so this almost
>> means the opposite of what you're talking about.
>
> I think Gabriel meant "variables as boxes" - the classic description
> of variables in "old school" programming languages, which is in
> contrast to the "variables as labels" model used by Python.

Yes, I used the wrong expression here. Paul is right, I was thinking of
"variables" as a "box" with a label written on it, and a value inside.
That model is not valid in Python.

--
Gabriel Genellina

Bob Woodham

unread,
Apr 25, 2008, 7:22:04 PM4/25/08
to

To the extent that (historically) C++ was a superset of C, it was true of C++
as well. However, I haven't kept pace with the C++ standardization process.
C++ now has its own ANSI standard and I don't know what, if anything, the C++
standard has to say on this issue. Maybe a C++ guru can comment.

Bob Woodham

unread,
Apr 25, 2008, 8:01:48 PM4/25/08
to
On 2008-04-24, Istvan Albert <istvan...@gmail.com> wrote:
> On Apr 23, 2:08 pm, Bob Woodham <wood...@cs.ubc.ca> wrote:
>
>> x = x++;
>>
>> has unspecified behaviour in C. That is, it is not specified
>> whether the value of x after execution of the statement is the
>> old value of x or one plus the old value of x.
>
> unspecified means that the result could be anything: old value, old
> value+1, -2993882, "trallalla", core dump, stack overflow etc...

One would certainly hope there are only two possible results, the old value of
x or the incremented value of x.

I first encountered this issue with a C compiler that produced one of those
two results differently depending on the level of optimization requested.
(Ultimately, it boiled down to the issue of whether the compiler allocated x
to a register or as a standard memory reference). Rather than it being a bug,
I was surprised to discover that the C compiler had not, in fact, violated the
ANSI C standard.

Note that x can be a pointer of arbitrary type. Thus, it is not beyond the
realm of possibilty that a result different from what the programmer expected
might indeed produce, in the end, -2993882, "trallalla", core dump, stack
overflow etc...

I don't have a copy of the ISO/ANSI C spec at hand. Harbison and Steele, Jr.,
"C a Reference Manual (4th ed)," section 7.12.1, page 228, state, "In ISO C,
if a single object is modified more than once between successive sequence
points, the result is undefined." Assuming Harbison and Steele quote the 1990
spec correctly, the word I should have used is "undefined." Can you live with
that?

Aside: Yes, the issue is that x = x++; modifies the single object x more than
once between successive sequence points.

Aahz

unread,
Apr 25, 2008, 8:07:38 PM4/25/08
to
In article <7e595409-be62-4b8c...@c65g2000hsa.googlegroups.com>,
azrael <jura....@gmail.com> wrote:
>
>Which big aplications are written in python.

YouTube
--
Aahz (aa...@pythoncraft.com) <*> http://www.pythoncraft.com/

Why is this newsgroup different from all other newsgroups?

Fuzzyman

unread,
Apr 29, 2008, 2:25:54 PM4/29/08
to
On Apr 22, 11:25 am, azrael <jura.gro...@gmail.com> wrote:
> Hy guys,
> A friend of mine i a proud PERL developer which always keeps making
> jokes on python's cost.
>
> Please give me any arguments to cut him down about his commnets
> like :"keep programing i python. maybe, one day, you will be able to
> program in VisualBasic"
>
> This hurts. Please give me informations about realy famous
> aplications.

`
Resolver One - a spreadsheet development environment for creating
business applications (aimed particularly at the financial services
industry) is written in IronPython.

There are around 30 000 lines of Python in the production code and
about 120 000 lines of Python code in the test framework.

Here is a quote from "Credit Cooperatif", a large French bank who are
now using Resolver One:

We use Excel and VBA, but we prefer Python for its combination of
simplicity and power. We were looking to better link spreadsheets with
Python programming, and Resolver One seemed to be the most elegant
solution because it was based on Python but also gave us compatibility
with our IT team’s architectural choice of Microsoft .NET.

Resolver One (Windows only but free to try and for non-commercial
use): http://www.resolversystems.com/

Michael Foord
http://www.ironpythoninaction.com/

George Sakkis

unread,
Apr 29, 2008, 8:03:16 PM4/29/08
to
On Apr 29, 2:25 pm, Fuzzyman <fuzzy...@gmail.com> wrote:

> There are around 30 000 lines of Python in the production code and
> about 120 000 lines of Python code in the test framework.

A rather off-topic and perhaps naive question, but isn't a 1:4
production/test ratio a bit too much ? Is there a guesstimate of what
percentage of this test code tests for things that you would get for
free in a statically typed language ? I'm just curious whether this
argument against dynamic typing - that you end up doing the job of a
static compiler in test code - holds in practice.

George

cokof...@gmail.com

unread,
Apr 30, 2008, 5:47:13 AM4/30/08
to
>
> A rather off-topic and perhaps naive question, but isn't a 1:4
> production/test ratio a bit too much ? Is there a guesstimate of what
> percentage of this test code tests for things that you would get for
> free in a statically typed language ? I'm just curious whether this
> argument against dynamic typing - that you end up doing the job of a
> static compiler in test code - holds in practice.
>
> George

To me it seems like more of an argument for a (more) concise Test
Framework for Python, or at least a fully fledge IDE beyond pyDev.

MRAB

unread,
Apr 30, 2008, 11:15:55 AM4/30/08
to

You could just as easily argue that it shows the power of Python:
something that contains so much functionality that it requires 120 000
lines to test completely needs only 30 000 lines to implement! :-)

greg

unread,
May 20, 2008, 11:01:55 PM5/20/08
to
Someone wrote:
>>>I'm just curious whether this
>>>argument against dynamic typing - that you end up doing the job of a
>>>static compiler in test code - holds in practice.

I suspect that, although some of the things caught
by the tests would be caught by static typing, the
very *same* tests are also catching a lot of things
that wouldn't be caught by static typing.

Also, I don't think it's valid to equate the size of
the tests with the amount of effort it took to develop
them. For instance, the test suite for Pyrex is currently
larger than the Pyrex compiler, but I've still spent
far more time and effort developing the compiler than
writing the tests.

--
Greg

Ben Finney

unread,
May 20, 2008, 11:34:15 PM5/20/08
to
greg <gr...@cosc.canterbury.ac.nz> writes:

> Also, I don't think it's valid to equate the size of the tests with
> the amount of effort it took to develop them. For instance, the test
> suite for Pyrex is currently larger than the Pyrex compiler, but
> I've still spent far more time and effort developing the compiler
> than writing the tests.

Right. The unit test suite should tend to increase: add tests far more
often than removing them. The application code, though, should tend to
grow less rapidly: refactor duplication, remove redundant code, and
add new code.

This should tend to result in the unit test suite growing over time
faster than the application code does, even if roughly the same effort
goes into both. Thus the size of each is not a good indicator of the
amount of effort.

--
\ "I got a postcard from my best friend, it was a satellite |
`\ picture of the entire Earth. On the back he wrote, 'Wish you |
_o__) were here'." -- Steven Wright |
Ben Finney

Bruno Desthuilliers

unread,
May 21, 2008, 7:20:35 AM5/21/08
to
Ben Finney a écrit :

> greg <gr...@cosc.canterbury.ac.nz> writes:
>
>> Also, I don't think it's valid to equate the size of the tests with
>> the amount of effort it took to develop them. For instance, the test
>> suite for Pyrex is currently larger than the Pyrex compiler, but
>> I've still spent far more time and effort developing the compiler
>> than writing the tests.
>
> Right. The unit test suite should tend to increase: add tests far more
> often than removing them. The application code, though, should tend to
> grow less rapidly:

or even sometimes, at some point, start to shrink, thanks to:

0 new messages