JEP 276: Dynamic Linking of Language-Defined Object Models

Martijn Verburg martijnverburg at
Mon Oct 19 12:08:23 UTC 2015

Hi Attila,

Cool, reached out to a few people (Scala & Clojure in particular) JIC they
missed it and pointed them directly at the JEP and this thread. I think the
API will be all the richer when it hits its 2nd real enemy (so to speak)


On 18 October 2015 at 21:57, Attila Szegedi <attila.szegedi at>

> Sure. For what’s it worth, this is for all practical purposes Dynalink, in
> the form I’ve been developing for years as a standalone library on GitHub
> and presenting about it at JVM Language Summits over several years, so I’d
> expect a significant amount of awareness is there.
> The primary motivator for this JEP is that I finally came to the point
> where I want to take it out of the jdk.internal.* space and into jdk.*
> space, so it is a supported API available to others as well, not just
> Nashorn. There were already people trying to do so something with the
> jdk.internal.* APIs, e.g. <
> and discovering that JDK 9 is blocking that path.
> For quite long I was reluctant to bring it out into the open as we were
> making lots of improvements on it internally driven by real-world use
> requirements coming from Nashorn, but it was always the intent to
> eventually do so. It was just a matter of finding the right time to do it:
> after it seems to have stabilized internally (so we feel fairly confident
> that there’s nothing in the design that could be invalidated or
> incomplete), but before people really want to use it but can’t. We’re
> obviously somewhat late on “people want to use it" metric, see above linked
> e-mail, but I feel we’re now reached the right time with regard to
> stabilization.
> Which of course is not to say that we won’t discuss this with other
> language implementers further; getting the current machinery underlying
> Nashorn out there as an accessible API (with a lot of cleanup and
> exhaustive documentation, as befitting a supported API) is the first step,
> and then when it’s out there and people can - as somene said - kick the
> tires we can mold it further with input from the community as necessary.
> On a purely personal sidenote, I’m extremely excited to move forward with
> this. Maybe I’ll eventually write a (highly romanticized, of course) story
> of how Dynalink got started, but if I just look at it chronologically, it
> is something I’ve started thinking about circa 2007, wrote an initial
> prototype in 2008, and the first invokedynamic-based reformulation in 2009,
> a later iteration of which got integrated into Nashorn in 2012, and then
> developed alongside it ever since. So, it’s been part of my work life, on
> and off for good 7-8 years now. I’m obviously thrilled to be taking it to
> maturation with OpenJDK community :-)
> Attila.
> On Oct 17, 2015, at 1:30 PM, Martijn Verburg <martijnverburg at>
> wrote:
> This looks very, very promising.  Would it help to get the language
> maintainers of the most popular scripting/dynamic JVM languages involved
> ASAP?  Happy to contact Groovy, Clojure, Scala, JRuby folks (although I
> suspect many of them are on this list).
> Cheers,
> Martijn
> On 16 October 2015 at 18:35, <mark.reinhold at> wrote:
>> New JEP Candidate:
>> - Mark

More information about the core-libs-dev mailing list