<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>I pushed a lot more testing and implementation code for the reference implementation. &nbsp;Finally permuteArguments works, as do all the variations of varargs processing.</div><div><br></div><div>Here's the updated javadoc; it's getting better:</div><div>&nbsp;&nbsp;<a href="http://cr.openjdk.java.net/~jrose/pres/indy-javadoc-mlvm/">http://cr.openjdk.java.net/~jrose/pres/indy-javadoc-mlvm/</a></div><div><br></div><div>I added&nbsp;<a href="http://cr.openjdk.java.net/~jrose/pres/indy-javadoc-mlvm/java/dyn/MethodHandles.html#filterArguments(java.dyn.MethodHandle,%20java.dyn.MethodHandle...)">filterArguments</a>, since I remember people asking for it during last year's Summit. &nbsp;Such a simple use case (single argument transformation with a unary function) is too awkward to implement in terms of&nbsp;<a href="http://cr.openjdk.java.net/~jrose/pres/indy-javadoc-mlvm/java/dyn/MethodHandles.html#foldArguments(java.dyn.MethodHandle,%252520java.dyn.MethodHandle)">foldArguments</a>&nbsp;(requires argument dropping/reordering).</div><div><br></div><div>-- John</div><div><br></div><div><div>P.S. &nbsp;I also added something called&nbsp;<a href="http://cr.openjdk.java.net/~jrose/pres/indy-javadoc-mlvm/java/dyn/MethodHandles.html#dynamicInvoker(java.dyn.CallSite)">dynamicInvoker</a>. &nbsp;It is a simple thing&nbsp;which turns a CallSite into a simulated invokedynamic instruction; this rounds out the Lookup.find{Static,*} functionality to include the new invoke instruction. &nbsp;Not sure if it is the right thing, though.</div></div></body></html>