--- Bill Janssen <[EMAIL PROTECTED]> wrote:

> [...]  It's more important to make things work
> consistently than to only
> have "one way".  "sum" should concatenate strings.
> 

"Sum" should sum stuff.  You can't sum strings.  It
makes no sense in English.

You can concatenate strings, or you can join them
using a connecting string.  Since concatenating is
just a degenerate case of joining, it's hard to
justify a concat() builtin when you already have
''.join(), but I'd rather have a concat() builtin than
an insensible interpretation of sum().  

Multiple additions (with "+") mean "sum" in
arithmetic, but you can't generalize that to strings
and text processing.  The "+" operator for any two
strings is not about adding--it's about
joining/concatenating.  So multiple applications of
"+" on strings aren't a sum.  They're just a longer
join/concatenation. 

Remember also that you can't have "+" operate on a
string/integer pair.  It's just practicality that
Python uses the same punctuation for addition and
concatenation.  In English it's sensible to have
punctuation for addition, so it has "+," but it needs
no punctuation for joining/concatenation, so Python
had to pick the closest match.




       
____________________________________________________________________________________
Need a vacation? Get great deals
to amazing places on Yahoo! Travel.
http://travel.yahoo.com/
_______________________________________________
Python-3000 mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-3000
Unsubscribe: 
http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com

Reply via email to