Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!husc6!bloom-beacon!gatech!ulysses!hector!ekrell
From: ekrell@hector..UUCP (Eduardo Krell)
Newsgroups: comp.unix.wizards
Subject: Re: symbolic links are a botch
Message-ID: <2727@ulysses.homer.nj.att.com>
Date: Mon, 13-Jul-87 16:15:53 EDT
Article-I.D.: ulysses.2727
Posted: Mon Jul 13 16:15:53 1987
Date-Received: Wed, 15-Jul-87 00:37:17 EDT
References: <2629@ulysses.homer.nj.att.com> <390@murphy.UUCP> <898@rtech.UUCP> <8738@tekecs.TEK.COM> <241@nuchat.UUCP>
Sender: daemon@ulysses.homer.nj.att.com
Reply-To: ekrell@ulysses (Eduardo Krell)
Organization: AT&T Bell Labs, Murray Hill
Lines: 22

In article <241@nuchat.UUCP> steve@nuchat.UUCP writes:
>
>Instead of allowing directories to be links to another directory,
>have an object with the superficial semantics of a directory but
>implementing a "copy-on-write" window onto a search path of other
>directories, perhaps chained to arbitrary depth.

I have already done exactly what you describe. We have an experimental
unix kernel with this facility added. It's very similar to the viewpathing
concept found in build and nmake (aka 4th generation make).

Basically, one can create a "continuation" directory, which will be searched
whenever a filename is being looked up and it's not found in the current
directory. That continuation directory can have more continuation directories
chained in a kind of linked list, and they are all searched in turn.
If the same file exists in 2 or more of these directories, only the first
one will ever be seen. File are always created in the first (original)
directory. Only file lookups follow these continuation pointers.
    
    Eduardo Krell                   AT&T Bell Laboratories, Murray Hill

    {ihnp4,seismo,ucbvax}!ulysses!ekrell