axiom-developer
[Top][All Lists]
Advanced

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

[Axiom-developer] RE: Cannot Rename The File Erlib To NRLIB


From: Page, Bill
Subject: [Axiom-developer] RE: Cannot Rename The File Erlib To NRLIB
Date: Wed, 6 Sep 2006 14:04:50 -0400

Camm, 

On Wednesday, September 06, 2006 1:50 PM you wrote:
> 
> Bill Page writes:
> ... 
> > > 
> > > In src/interp/nlib.lisp.pamphlet:
> > >
> > > ----------
> > > 
> > >  ;; ($ERASE filearg) -> 0 if succeeds else 1
> > >  (defun $erase (&rest filearg)
> > >    (setq filearg (make-full-namestring filearg))
> > > -  (if (probe-file filearg)
> > > +  (if (directory (truename filearg))
> > >  #+:CCL (delete-file filearg)
> > >  #+:AKCL
> > >        (if (library-file filearg)
> > >            (delete-directory filearg)
> > >            (delete-file filearg))
> > >        1))
> > > 
> > > ----------
> > > 
> > ... 
> > However I remain a little uncertain if 'directory' is really
> > the proper way to check for the existence of a file or
> > directory in common lisp?
> > 
> 
> 1) I think you want (null (pathname-name (truename filearg)))
>
> 2) or (and (directory filearg) (not (probe-file filearg)))
> 

Sorry, I still feel a little "dense" about this. Could you take
a minute to translate these two expressions for me? I want

 (if (... filearg)
   )

to be true if filearg is either a file *or* a directory.

I suspect that 2) requires that it be a directory and not a file
since 'probe-file' is now interpreted as specifically as testing
for a *file*. So maybe that one is not right?

I am also worried about the "wild-card" properties of 'directory'
which is not something I really want.

But I don't know the semantics of 1) at all, and having
consulted the lisp docs as deeply as possible, I am still
not sure. What exactly does expression 1) do on GCL?

Regards,
Bill Page.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]