On Fri, Jun 02, 2000 at 02:02:42PM -0400, Andrew Pimlott wrote: > Jesse Pollard <[EMAIL PROTECTED]>: > > > I am not familiar in how this works, but it would be cool if those > > > requirements were marked as "weak" and un-marked if the option relying > > > on them is. > > > > > > i.e. > > > I have driver "foo" requiring "bar". If I mark foo, I want bar to be > > > marked. > > > But if then I change my mind and unmark foo, I wish for bar to be unmarked > > > (unless explicitly re-marked). But if I select first bar and then foo, > > > then > > > bar is not to be de-selected when foo is. > > > > Also: if there is a driver baz that also requires bar we would want bar > > included > > if EITHER foo or baz were selected, but bar should not be included only > > if BOTH foo and baz are deslected... Choosing foo should mark bar; Choosing > > baz should also mark bar; But if foo is deselected, then bar should not be > > unmarked since baz is still selected... > > I've actually been thinking about something similar, but before this morning > I didn't have a semantics for it that I liked. How about this? > > * Implement a stack of "weak" bindings for each symbol, each associated > with the symbol that forced it. A user setting overrides all weak bindings, > otherwise more recent ones have priority over older ones. Whenever a symbol > changes value all the weak bindings it forces go away (then it may make new > ones). Indicate weak bindings with a distinguished foreground color.
Why simple reference counting of such bindings won't work ?

