[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Issue: PATHNAME-SUBDIRECTORY-LIST (Version 2)



>                         I think :UP might just be a keyword, since I can't
>  imagine there being more than one way of moving up.  

Assume you are using some version of un*x, and that /foo/b1/b2 is a
symbolic link to directory /foo/a1/a2/a3.  

Then using csh, after cd /foo/b1/b2/.., pwd will show /foo/a1/a2,
 but using bsh, after cd /foo/b1/b2/.., pwd will show /foo/b1.

I.e., if you are trying to emulate the behavior of csh, you must wait
until the truename is resolved before knowing where :UP will lead you.

In Lucid Common Lisp for the Sun-3, I get the following behavior,
assuming /u/jlm/b1/b2 is a symbolic link to ../a1/a2/a3, and all the
relevant directories actually exist:

> (cd "/u/jlm/")
#P"/u/jlm/"
> (setq aa (pathname "b1/b2/.."))
#P"b1/b2/.."
> (cd aa)
#P"/u/jlm/a1/a2/"
> 

The moral is that (not (eq :UP :UNDO)).

  jlm