[mod.computers.apollo] "Search lists", links and environment variables

mishkin@apollo.UUCP.UUCP (07/10/86)

To follow up on my previous message about multi-valued links, it has been
pointed out to me by several people that I didn't have my head screwed on
quite right:  The right way to look at the problem is in terms of added
pathname syntax, not links and environment variable.  E.g. the syntax
"/a/{x,y,z}/b" might be chosen to mean "/a/x/b", "/a/y/b", and "/a/z/b".
This syntax could be "hidden" inside either environment variables OR
links, as one likes:

    $ v := "{x,y,z}"
    $ catf "/a/$(v)/b"

    $ crl l "{x,y,z}"
    $ catf "/a/l/b"

One interesting note: given that under Unix, all characters (other than
"/") are valid in pathname components, how upset are people likely to
be at me taking even more reserved characters (i.e. the "{" "}", or
whatever)?  If I used a syntax like "/a/$((x,y,z))/b", I wouldn't be
making matters much worse since we already reserved "$(...)" for
environment variables.  Of course, this looks horrible.

                    -- Nat Mishkin
                       Apollo Computer Inc.
                       apollo!mishkin
-------

dennis%cod@NOSC.ARPA.UUCP (07/11/86)

I'm not sure I agree that your change to pathname syntax is what is
wanted.  For instance, in the case where alternate links/filenames
are used to provide network redundancy, the command

	$ catf //{node1,node2}/sys/help/ld.hlp

should display only one of the files, probably with a preference
for the version on node1, whereas in

	$ dlf work/{version1,version2}/junk

I probably want to delete two files.

The generalization of the original idea to modifications of pathname
syntax sounds interesting, but I would think that it would require
careful scrutiny to make sure all the ramifications were understood.

	Dennis Cottel  Naval Ocean Systems Center, San Diego, CA  92152
	(619) 225-2406     dennis@nosc.ARPA      sdcsvax!noscvax!dennis