Published on August 3, 2017 by java

Usually when a dynamic language want to expose its own objects to the Java world (the other way around is trivial because a dynamic language can generate an invokedynamic while Java can not (yet!)), the language runtimes use wrappers/proxies/mirrors to expose those objects as Java objects, this can be costly in term of performance and may break the semantics of a program because the wrapper and the wrapped object do not have the same behavior. Mjolnir is a new technique to preserve the behavior of an object and reduce the adaptation overhead to zero at the
price of several awful hacks combined.

Leave a Reply

Be the First to Comment!

Notify of