Some suggested patches and improvements

Stephen Colebourne scolebourne at
Tue May 16 10:14:31 UTC 2017

On 12 May 2017 at 17:31, David M. Lloyd <david.lloyd at> wrote:
>>> 4. Make run-time cycle checking optional
>> My opinion is that run-time cycles are inevitable. The proposed
>> solutions (refactoring to API vs Impl) is not particularly good in an
>> open source context. I'm also concerned that "requires static"
>> (optional dependencies) also naturally leads to cycles
>> But the question at this point is whether it is worth the effort to
>> try and live without cycles for this release - after all, no-one wants
>> cycles in their design.
> It's true, cycles sound bad.  But as a point of fact, at run time they're
> not demonstrably harmful, and in fact worrying overmuch about cycles
> detracts from clean design principles: I have an ABI that conforms to a
> particular behavioral contract; it should not matter how I meet that
> contract (and in particular, whether I do so by way of a series of other
> contracts that ultimately may be used by things which use *my* ABI is a
> completely uninteresting distraction).

Just to be clear, of the five items listed, I think if just one were
to be tackled, I'd choose this one. Because I think it will come up in
real systems and because I basically agree that cycles at runtime
should not be something that should be blocked by the JDK/JVM.


More information about the jigsaw-dev mailing list