[Python-Dev] Bytes path support (original) (raw)

Paul Moore p.f.moore at gmail.com
Sat Aug 23 19:40:37 CEST 2014


On 23 August 2014 16:15, Oleg Broytman <phd at phdru.name> wrote:

On Sat, Aug 23, 2014 at 06:02:06PM +0900, "Stephen J. Turnbull" <stephen at xemacs.org> wrote:

And that's the big problem with Oleg's complaint, too. It's not at all clear what he wants The first thing is I want to understand why people continue to refer to Unix was as "broken". Better yet, to persuade them it's not.

Generally, it seems to be mostly a reaction to the repeated claims that Python, or Windows, or whatever, is "broken". Unix advocates (not yourself) are prone to declaring anything other than the Unix model as "broken", so it's tempting to give them a taste of their own medicine. Sorry for that (to the extent that I was one of the people doing so).

Rhetoric aside, none of Unix, Windows or Python are "broken". They just react in different ways to fundamentally difficult edge cases.

But expecting Python (a cross-platform language) to prefer the Unix model is putting all the pain on non-Unix users of Python, which I don't feel is reasonable. Let's all compromise a little.

Paul

PS The key thing I think is a problem with the Unix behaviour is that it treats filenames as bytes rather than Unicode. People name files using characters. So every filename is semantically text, in the mind of the person who created it. Unix enforces a transformation to bytes, but does not retain the encoding of those bytes. So information about the original author's intent is lost. But that's a historical fact, baked into Unix at a low level. Whether that's "broken" or just "something to deal with" is not important to me.



More information about the Python-Dev mailing list