Non-interference (was: Re: Module-system requirements)

mark.reinhold at oracle.com mark.reinhold at oracle.com
Mon Mar 9 20:58:17 UTC 2015


2015/2/16 9:04 -0800, tim_ellison at uk.ibm.com:
> mark.reinhold at oracle.com wrote on 16/02/2015 01:25:07:
>> 2015/2/13 6:06 -0800, tim_ellison at uk.ibm.com:
>>> Can you explain "interfere"?  Is this referring to ambiguous class and 
>>> linkage error type problems, or something else here?
>> 
>> The former.  If two distinct modules contain packages of the same name
>> then code in that package in one module must not be able to access
>> package-private types or members in that package in the other module.
>> If two distinct modules contain classes of the same name (i.e., with the
>> same binary name) then one must not be able to stand in for the other.
> 
> Ok, so the module name partitions the package name space.

Yes.

> Consider the following change for the Exports fundamental definition:
> 
>   Exports — A module’s definition must be able to indicate which
>   of its packages are exported for use by other modules, and which
>   are not.  Multiple modules may export packages of the same name.

Good -- I'll revise as you suggest.

- Mark


More information about the jpms-spec-experts mailing list