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

Bug#212049: "dependency" used backwards

Thomas Hood wrote:
> On Mon, 2003-09-22 at 00:24, Daniel B. wrote in part:
> > Debian seems to use the word "dependency" backwards a lot, making
> > things confusing and hard to understand.
> [...]
> > If A depends on B, then A is a
> > dependency (A is dependent on B).  B is _not_ a dependency of A.
> The word 'dependency' can denote the relation between A and B ;
> then it isn't oriented one way or the other, e.g., 'There is a
> dependency between A and B'.  

Right, that's that primary meaning of "dependency" (sense 1 in the 
dictionary I quoted).  In Debian, *most* uses of "dependency" seem 
to refer to a relationship, and are not a problem.  (Although a few
might be slightly ambiguous, they're not incorrect.)

However, recall that "dependency" has a second meaning:  something
that depends on something else.  (Consider for example the U.S. 
dependencies listed at http://falcon.jmu.edu/~ramseyil/states.htm#C ).
It's the cases where Debian erroneously uses "dependency" to refer 
to the thing that is depended on (instead of the thing that depends
on something else) that are a problem.

> To indicate the orientation you have
> to say something like 'A depends on B'.

Yes, that is certainly the clearest way to indicate the orientation.

> I think you make a worthwhile point that in some cases the
> direction of the dependency should be indicated more clearly.

> ...see bug ...212013...
> You meant #212031.

Yep; sorry to make you search for it.

> > Since merely using "dependency" correctly would be ambiguous given
> > all the incorrect usage, Debian should probably refer to "depended-on
> > package" (or library, etc., as the case may be).  That construct would
> > be unambiguous and perfectly clear (and wouldn't be much longer than "dependency").
> Suppose we are talking about A.  Then your complaint is that
>                      A's dependencies
> is ambiguous between denoting the packages that depend on A and
> the packages upon which A depends.  

Yes, is ambiguous are you described, but to clarify:

My core complaint is that saying "A's dependencies" when one means 
the things that A depends on is plain old wrong (and therefore 

I was only saying that "A's dependencies" would be ambiguous because,
given all the incorrect usage, you can't tell whether it was written
correctly and means "the things that depends on A," or whether it was
written incorrectly and means the opposite, "the things on which A

> I don't see how
>                      A's depended-on packages
> is any clearer.  Actually it seems worse to me.  I suggest using
>                    packages upon which A depends
> and
>                    packages that depend on A
> wherever the ambiguity matters.

Yes, that would be even clearer than "A's depended-on packages."

I had suggested "A's depended-on packages" because I thought people 
would object to the longer phrasing you suggested.

Actually, another replacement for one case would be "prerequisite."

The two main cases would be:

- referring to the relationship: "Apt analyzes dependencies"

- referring to the depended-on items (the items upon which some 
  given item depends): "perl's prerequisites must be installed to 
  install perl"

(The third case, which is much less common, is referring to items 
that depend on a given item.  Technically, it is correct to call
those items dependencies of the given item (in sense 2).  However, 
saying "A's dependencies" is ambiguous in two ways:
- "A's dependencies" is ambiguous between referring to the 
  dependency relationships and referring to the items that depend
  on A.
- It is ambiguous between current incorrect use referring to the 
  items on which A depends and correct use referring to the items 
  which depends on A.

Therefore, any instances of the third case should probably use
something like "packages that depend on A" as you suggest.)

Daniel Barclay

Reply to: