From: Marco A. <ma...@pa...> - 2000-03-03 15:17:48
|
Hi it turns out that the following definition of PATHNAME-LOGICAL-P works better in CLisp. #+clisp ; CLisp has non conformant Logical Pathnames. (defun pathname-logical-p (thing) (typecase thing (logical-pathname t) (pathname (let ((pns (namestring thing))) (and (= 1 (count #\: pns)) ; Shortcut. (logical-pathname-p pns)))) (string (and (= 1 (count #\: thing)) ; Shortcut. (ignore-errors (translate-logical-pathname thing)) t)) (t nil))) This is because of the fact that CLisp returns PATHNAMEs in places where the CLHS assumes that a LOGICAL-PATHNAME should be returned. (E.g. MERGE-PATHNAMES). Cheers -- Marco Antoniotti =========================================== PARADES, Via San Pantaleo 66, I-00186 Rome, ITALY tel. +39 - 06 68 10 03 17, fax. +39 - 06 68 80 79 26 http://www.parades.rm.cnr.it/~marcoxa |