[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Issue: PATHNAME-SUBDIRECTORY-LIST (Version 2)
- To: gz@spt.entity.com
- Subject: Issue: PATHNAME-SUBDIRECTORY-LIST (Version 2)
- From: Jim McDonald <edsel!jlm@labrea.stanford.edu>
- Date: Fri, 8 Jul 88 10:21:40 PDT
- Cc: KMP@stony-brook.scrc.symbolics.com, CL-Cleanup@sail.stanford.edu
- In-reply-to: Gail Zacharias's message of 8 Jul 88 05:55:05 EDT (Fri) <8807080555.AA15328@spt.entity.com>
> 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