~/talk

Let's Talk About Invokedynamic

Talkat Joker 2016 · 2016-10-14..10-15· [java, compilers-and-language-design]
slides:none on file

Invokedynamic arrives as a new JVM bytecode plus a fast API of method handles and call sites, letting language runtimes wire up calls that JIT as well as static Java. Examples show use of ASM, Jade script and an invoke binder DSL, a mutable callsite that flips targets, guardWithTest/switchPoint adaptations, and a tiny demo language “stupidscript” compiled to invokedynamic. Claims: ~200 JVM opcodes predate this change, invokedynamic ships in Java 7, powers Java 8 lambdas, and method handles run far faster than reflection and close to direct calls.

AI-written summary · about

  1. 0:00Introduction to JRuby
  2. 2:09History of invokedynamic
  3. 4:00What is invokedynamic?
  4. 6:33Method Handle API
  5. 13:07Adapting Method Handles
  6. 18:30Flow Control Techniques
  7. 24:03JVM Bytecode Basics
  8. 30:36Implementing Bootstrap Methods
  9. 34:26Dynamic Call Site Switching
  10. 37:32Dynamic Dispatch Example
  11. 43:43Conclusion and Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.