On May 9, 2012, at 1:37 PM, Mark Roos wrote: > > Quite interesting John. A few curiosity based questions. > > we are now representing the argument transformations using > a simple AST-like IR, called a LambdaForm > > would this be something we could inspect, build or manipulate?
Only in privileged code. Like the sun.misc.Unsafe API, LFs and the associated non-public MH APIs are designed to be partially type-unsafe, and usable only from trusted code. There may be a type-safe way to use them beyond implementing JSR 292, but that would require further research. (Which this community enjoys!) For an approximately current sketch of lambda forms, see this file: http://hg.openjdk.java.net/mlvm/mlvm/hotspot/file/tip/meth-lazy.txt Especially the section "## form". A key feature of LFs is that their grammar is regular but not recursive (I can't resist: sub-Chomskian). > This form can be easily rendered down to bytecodes > > Are these jvm bytecodes or internal to hotspot? Again would this be a space > one > could play in? Vanilla JVM bytecodes. Some of the magic comes from the methods they are able to call, like MethodHandle.invokeBasic. These work (in a sense) like extended bytecodes. > thanks for the update My pleasure. — John _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev