On Thu, Jul 15, 2010 at 12:59 AM, Faré <[email protected]> wrote: > we use TRUENAME + HANDLER-CASE precisely because the file (or > directory, most of the time) doesn't necessarily exist and we're > trying to fully resolve any symlinks along the path, so that in the > end we may apply translations to normalized pathnames. >
But Rene, (ignore-errors (return (truename p))) = (probe-file p) with the difference that the latter can be implemented much more efficiently. TRUENAME has a cost that is proportional to the number of directory components and to this you must add the cost of establishing a handler-bind and the jump outside the function due to the error. PROBE-FILE first probes the existence of the file, which can be done with a *single* system call. No error handling is required: if the file does not exist, nothing else is done, but if the file exists, then its truename is returned -- as per TRUENAME, with symlinks resolved. Am I missing something? Juanjo -- Instituto de Física Fundamental, CSIC c/ Serrano, 113b, Madrid 28006 (Spain) http://juanjose.garciaripoll.googlepages.com
_______________________________________________ asdf-devel mailing list [email protected] http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel
