pathnames [Re: files, printers, etc. [Re: The feel of a Lisp

Alaric B. Williams alaric@abwillms.demon.co.uk
Sat, 3 May 1997 22:59:13 +0000


> A URL contains 4 parts:
 
[...]
 
> Clearly, an object which has those four fields would be a more lispy way to do 
> this.  Also, you could generate a path object by parsing a URL like this:
> 
> 	(parse-url "http://www.somehere.com/path/file.ext")

Ok, here's how I'd do it.

A pathname is a symbol list, identifying an object in the user
namespace. Any user-level object; printer, file, directory, system,
user, etc.

Now, all pathnames start from the global root - the set of all hosts
on an Internet system. EG:

(abwillms.demon.co.uk Public Hello!)

Meaning "the object Hello inside the object Public inside the
object abwillms.demon.co.uk".

If we want a CWD, we must specify it, by using a simple form of backquoting
that replaces a symbol with it's binded value in the
pathnames environment - by putting it in a sublist:

 - local referring to the local machine

((local) Public Hello!)

 - . referring to the CWD

((.) Hello!)

etc.

ABW
--
Alaric B. Williams (alaric@abwillms.demon.co.uk)

   ---<## OpenDOS FAQ ##>---

Plain HTML: http://www.delorie.com/opendos/faq/
            http://www.deltasoft.com/faq.html

Fancy HTML: http://www.deltasoft.com/faq0000.html