Carl Friedrich Bolz wrote: > Robin Becker wrote: >> Larry Hastings wrote: >> ______ >>> THE PATCH >>> >>> The core concept: adding two strings together no longer returns a pure >>> "string" object. Instead, it returns a "string concatenation" object >>> which holds references to the two strings but does not actually >>> concatenate >>> them... yet. The strings are concatenated only when someone requests >>> the >>> string's value, at which point it allocates all the space it needs and >>> renders the concatenated string all at once. >>> >>> More to the point, if you add multiple strings together (a + b + c), >>> it *doesn't* compute the intermediate strings (a + b). >>> >>> Upsides to this approach: >> ........ >> >> wouldn't this approach apply to other additions eg list+list seq+seq etc >> etc. > > no, I think it depends on strings being immutable. If you do list1 + > list2 that way and list1 is mutated then the resulting list would be > changed too. > >> I suppose the utility of such an approach depends on the frequency with >> which multiple strings/lists/sequences etc are added together in real > code. > > I think there are quite a lot of string additions around, it's just that > people get told to use join all the time, so they are not written using "+".
Sorry for the multiple post :-( -- http://mail.python.org/mailman/listinfo/python-list