On Mon, 2012-02-27 at 12:41 -0500, R. David Murray wrote:
On Mon, 27 Feb 2012 09:05:54 -0800, Ethan Furman
wrote: Martin v. Löwis wrote:
Am 26.02.2012 07:06, schrieb Nick Coghlan:
A small quibble: I'd like to see a benchmark of a 'u' function implemented in C. Even if it was quite fast, I don't think such a function would bring
On Sun, Feb 26, 2012 at 1:13 PM, Guido van Rossum
wrote: the same benefits as restoring support for u'' literals. You claim that, but your argument doesn't actually support that claim (or I fail to see the argument).
Python 2.6 code: this = u'that'
Python 3.3 code: this = u('that')
Not source compatible, not elegant. (Even though 2to3 could make this fix, it's still kinda ugly.)
Eh? The 2.6 version would also be u('that'). That's the whole point of the idiom. You'll need a better counter argument than that.
The best argument is that there already exists tons and tons of Python 2 code that already does: u'that' Needing to change it to: u('that') 1) Requires effort on the part of a from-Python-2-porter to service the aesthetic and populist goal of not having an explicit but redundant-under-Py3 literal syntax that says "this is text". 2) Won't atually meet the aesthetic goal, as it's uglier and slower under *both* Python 2 and Python 3. So the populist argument remains.. "it's too confusing for people who learn Python 3 as a new language to have a redundant syntax". But we've had such a syntax in Python 2 for years with b'', and, as mentioned by Armin's PEP single-quoted vs. triple-quoted strings forever. I just don't understand the pushback here at all. This is such a nobrainer. - C