Readability and other terminology
mark.reinhold at oracle.com
mark.reinhold at oracle.com
Thu Sep 17 14:54:11 UTC 2015
2015/9/9 1:48 -0700, david.lloyd at redhat.com:
> ...
>
> 3) Readability and other terminology
>
> "Readability" is the term that we were calling "visibility" up until
> this point, correct?
No, readability is a new concept, distinct from visibility. Readability
is a relation between modules, computed during resolution by interpreting
the `requires` clauses in module declarations. Visibility, by contrast,
is a relation between types.
> And the term "implied readability" is what I would
> have erstwhile called a transitive dependency.
No, readability and dependence are related but distinct concepts.
If module A depends upon module B (`requires B`), and B depends upon C,
then A depends transitively upon C. The resolver will construct a module
graph in which A reads B, and B reads C. There will be a path in the
graph from A to C, but that doesn't mean that A reads C. For that to
happen, B must `requires public` C, which during resolution will cause
an implied read edge to be added from A directly to C.
> Also, "exports" in this document appear to apply only to package names
> and not module dependency names.
Correct.
- Mark
More information about the jpms-spec-experts
mailing list