[Python-ideas] Python 3000 TIOBE -3%
python at mrabarnett.plus.com
Wed Feb 15 01:44:19 CET 2012
On 14/02/2012 23:35, Steven D'Aprano wrote:
> MRAB wrote:
>> On 14/02/2012 21:43, Jim Jewett wrote:
>>> On Tue, Feb 14, 2012 at 6:39 AM, Carl M. Johnson
>>> <cmjohnson.mailinglist at gmail.com> wrote:
>>>> OK, so concrete proposals: update the docs and maybe make a
>>>> synonym for Latin-1 that makes it more semantically obvious that
>>>> you're not really using it as Latin-1, just as a easy to pass through
>>>> encoding. Anything else? Any bike shedding on the synonym?
>>> encoding="ascii-ish" # gets the sloppyness right
>>> encoding="passthrough" # I would like "ignore", if it wouldn't cause
>>> confusion with the errorhandler
> "Ignore" won't do. Ignore what? Everything? Don't actually run an encoder?
> That doesn't even make sense!
> "Passthrough" is bad too, because it perpetrates the idea that ASCII
> characters are "plain text" which are bytes. Unicode strings, even those that
> are purely ASCII, are not strings of bytes (except in the sense that every
> data structure is a string of bytes). You can't just "pass bytes through" to
> turn them into Unicode.
>> encoding="mojibake" # :-)
> You have a smiley, but I think that's the best name I've seen yet. It's
> explicit in what you get -- mojibake.
> The only downside is that it's a little obscure. Not everyone knows what
> mojibake is called, or calls it mojibake, although I suppose we could add
> aliases to other terms such as Buchstabensalat and Krähenfüße if German users
Alternatively, "vreemdetekens" or "alfabetsoep"...
> But remind me again, why are we doing this? If you have to teach people the
> open(filename, encoding='mojibake')
> why not just teach them the very slightly more complex recipe
> open(filename, encoding='ascii', errors='surrogateescape')
> which captures the user's intent ("I want ASCII, with some way of escaping
> errors so I don't have to deal with them") much more accurately. Sometimes
> brevity is *not* a virtue.
More information about the Python-ideas