python 2.7.12 on Linux behaving differently than on Windows

Marko Rauhamaa marko at
Fri Dec 9 05:34:56 EST 2016

Steve D'Aprano <steve+python at>:

> On Fri, 9 Dec 2016 04:52 pm, Marko Rauhamaa wrote:
>> In Linux, "." and ".." are taboo. 
> No that's incorrect. It isn't that . and .. are forbidden, but they are
> reserved: every single directory in Unix file systems have a . and ..
> directory entry. So they are legitimate directory names -- they're just not
> names you can use for your own files, as they are already in use.

Same difference.

>> So is "".
> That's one way of looking at things... I'm not sure that the empty
> string counts as a file name. Its more of the LACK of a file name.
> Besides, that would be ambiguous. Would "/home/steve/" mean my home
> directory, or the file "" inside my home directory?

If Python had been the standard shell when Unix came about, you could
have defined pathnames as lists of strings. Then, everything would be
unambigous and there wouldn't be any taboo or reserved names.

BTW, guile allows *any* characters in an identifier. Even the empty name
is a valid identifier:

   > (define #{}# "hello")
   > #{}#
   $1 = "hello"
   (symbol->string '#{}#)
   $2 = ""
   > (symbol->string '#{.}#)
   $4 = "."


More information about the Python-list mailing list