Subject: Re: A portable DIRECTORY-P. Re: Here we go again. More CMUCL/ACL pathname differences.
From: Erik Naggum <>
Date: 1999/01/18
Newsgroups: comp.lang.lisp
Message-ID: <>

| I don't think CL wants to exclude file systems where the empty string is
| a valid file name.  (They would need some sort of escape character syntax
| when parsing namestrings, of course, to denote such a (strange) file
| name.)

  actually, I came across something that implies that the empty string and
  nothing are the same for a certain point of view:

Parsing a null string always succeeds, producing a pathname with all
components (except the host) equal to nil.

  this is in the dictionary for PARSE-NAMESTRING.

  so at least (file-namestring ...) => "" is reversible, but I'd still like
  to see some stronger wording to ensure that NIL is the correct answer.
  the dictionary for for PARSE-NAMESTRING doesn't say anything about when
  to return NIL now.  for me, however, the intuitively evident is OK until
  people start to object.  then I need something more concrete.  sigh.

  the really pathetic thing here is that Unix used to treat the empty
  string as the current directory.  that's how a trailing slash worked...

  SIGTHTBABW: a signal sent from Unix to its programmers at random
  intervals to make them remember that There Has To Be A Better Way.