[External] : Re: Disallowing the dynamic loading of agents by default

Ron Pressler ron.pressler at oracle.com
Wed Mar 29 12:14:13 UTC 2023



> On 29 Mar 2023, at 01:29, Gregg G Wonderly <greggwon at cox.net> wrote:
> 
> This is exactly my point!  Why would any one want to do something like this?  This level of workaround and specialized deployment is the kind of breakage that I am referring to.  I just don’t understand how this kind of rigging and customization can even start to feel right.
> 
> Gregg Wonderly

But you do understand, because you yourself have pointed out the problems caused by the old approach where the runtime and the application were provided separately. The current approach is a result of the JDK evolving to address those very problems, and it’s working. Embedded custom runtimes and strong encapsulation have greatly alleviated most of them. The alternative, a runtime that never changes, is only workable for very limited applications.

The old approach was guided by one primary use case, Applets, which had very limited capabilities. Indeed, similarly restricted JavaScript applications are delivered separately from their runtime, the web browser, but the more capable desktop applications written in JavaScript are delivered with an embedded runtime, for similar reasons. In other languages, including “native” ones, the trend is to similarly statically link dependencies — including even libc — or to bundle them in a container.

These aren’t workarounds, but the best means we have to date to deliver applications that are portable, capable, and evolvable, whether it feels right or not. Perhaps someday another approach will present itself.

— Ron



More information about the jigsaw-dev mailing list