Hi Marc,

So… this took about a year and a half to happen, but I’m happy to announce that 
there’s now a REMOVE operation in Dynalink. The latest EA of JDK10 contains it: 
<http://download.java.net/java/jdk10/docs/api/jdk/dynalink/StandardOperation.html#REMOVE
 
<http://download.java.net/java/jdk10/docs/api/jdk/dynalink/StandardOperation.html#REMOVE>>.
 Hopefully you can still find a use for it :-)

What the latest EA doesn’t contain _yet_ is Nashorn using it to implement its 
delete operator, so even if you link REMOVE in your language runtime, Nashorn 
won’t be able to delete your object’s properties, and your language won’t be 
able to delete Nashorn JS objects’ properties yet. The good news is that this 
functionality is also implemented and committed, but I just committed it now, 
so it will only ship with the next EA build. Alternatively, if you build your 
own jdk10 from the tip of the jdk/jdk10 repository, or your own jdk11 from the 
tip of jdk/jdk, you should have it.

Best Regards,
  Attila.

> On May 24, 2016, at 12:11 AM, Marc Downie <m...@openendedgroup.com> wrote:
> 
> Dear all,
> 
> First of all, many thanks for this year's JEP-276 / jdk.dynalink
> refactoring. We've been enjoying all of the benefits of installing a custom
> Linker without having to maintain a fork of Nashorn just to get it
> installed. We can massage and customize the face that Java objects present
> to JavaScript almost completely.
> 
> The one thing that remains that I can't manipulate is the behavior of Java
> objects with respect to *delete*. In short we have elaborately customizable
> *dyn:setProp*, *setElem*, *getProp*, *getElem* that we can bridge to other
> languages and runtimes, but no *dyn:deleteX. *Is this by omission or by
> design?
> 
> best,
> 
> Marc

Reply via email to