Still driving off the cliff
Rémi Forax
forax at univ-mlv.fr
Mon Feb 27 07:20:58 PST 2012
On 02/27/2012 03:48 PM, Eric Johnson wrote:
>
> On 2/24/12 10:15 AM, Rémi Forax wrote:
>>
>> So even in a module world, you need a way to separate platform code
>> from application code
>> (it should be better to even have a system which is able to separate
>> the application, from the container,
>> from the platform).
>
> I presume that the very notion of "platform" is something that
> modularization should challenge. If you privilege a particular part of
> the code base running in the JVM, then you make other uses of the JVM
> harder and/or burdened by legacy assumptions.
>
> Ideally, the only "privileged" module of the JVM is the ClassLoader
> infrastructure and the bare minimum it needs to do its job.
>
> So even your taxonomy of "application", "container", and "platform"
> seems suspect to me, because these are just (semantically laden)
> arbitrary labels associated with a particular code base. Ideally, we
> recognize that and allow an infinite set of notions here, some which
> might have commonly understood semantics. And if there is a privileged
> one, it should be *very* small.
>
> -Eric.
>
The main issue I see in a modular world is how to ensure the same
security granularity we have now.
A lot of parts of the JDK, perhaps too much you may say, in lang, util,
util.concurrent, etc,
relies on the fact that the code run in a privileged environment where
you can use unsafe tricks.
Ideally, as a developer, I also want to be able to install a module with
such privileges too,
if by example, I'm a developers of language runtimes (Groovy, JRuby,
Scala etc.) I want full access
to the platform.
Currently, those runtimes rely on the bootclasspath, that why I think
that even if the bootclasspath
is deprecated, jigsaw has to provide a mechanism to mark some modules as
platform modules.
Rémi
More information about the jigsaw-dev
mailing list