I have been reading this presentation about java8 lambdas implementation http://fr.slideshare.net/czechscala/java-8-under-the-hood
LambdaMetaFactory cont
There are just two methods in the class: https://docs.oracle.com/javase/8/docs/api/java/lang/invoke/LambdaMetafactory.html
metafactory()
and altMetafactory()
. Both mention to be a "bootstrap method for invokedynamic call sites".
My understanding is that code which implements the handling of the invokedynamic
op code eventually uses one of the two when the target of the invocation is a lambda expression.
The term "bootstrapping" in this context means that it prepares everything necessary to actually execute the job later.