Fwd: Jigsaw prototype, take 2

mark.reinhold at oracle.com mark.reinhold at oracle.com
Thu Sep 5 20:51:06 PDT 2013

2013/9/5 1:31 -0700, david.bosschaert at gmail.com:
> I always thought that JEP 161 was a great start for as much modularization
> as the JRE itself needs (which was always the root requirement of Jigsaw).
> I know it currently has 3 profiles, but we could always add more going
> forward.

The profile model is inherently limited, since each profile is a
self-contained runtime.  If we keep adding more over time then it's
going to become burdensome to keep track of them all, and to know which
APIs are in which profiles.  Wouldn't it be easier to be able to think
about the platform as a set of modules from which you can pick and
choose as needed?  Kind of like all those handy libraries you find in

> As regards to performance. It should definitely improve performance
> somewhat since you don't always load the whole rt.jar. I'm not sure I fully
> understand the 'transform module content during installation' piece but I
> question why you would need an actual module system for this.

You don't absolutely need one, but it can help.  Some ahead-of-time
performance optimizations can be more effective when it is known that
one class will only ever be able to refer to a limited number of other
classes, rather than any arbitrary class on the class path.  In a
modular system the number of classes to which a class can refer is
limited to those in the same module and in those in modules upon which
that module depends.

> I know JEP 161 isn't a 'real' module system, but I question why the JRE
> itself would actually need a full blown module system for it's own
> purposes.

See above.

- Mark

More information about the jigsaw-dev mailing list