~/talk

Meta-programming with Kotlin compiler plugins

slides:none on file

Shows how a real Kotlin compiler plugin is built, registered via META-INF/services, and debugged by setting Kotlin.compiler.execution.strategy = in-process so breakpoints hit; uses Kotlin 1.9 K2 front-end (FIR) and IR generation extensions, registers FIR and IR extensions, and prints a live “Hello world” to prove execution. Recommends KSP over plugins unless you must modify existing declarations or function bodies, warns the plugin API is unstable and multi‑Kotlin‑version maintenance is painful, and notes K2 will simplify distribution to a single JAR.

AI-written summary · about

  1. 0:00Introduction to meta-programming
  2. 1:14What is meta-programming?
  3. 4:42Compile-time introspection tools
  4. 8:51Kotlin compiler plugins evolution
  5. 16:58Live plugin development demo
  6. 25:34Building a compiler plugin
  7. 30:28Hard lessons learned
  8. 33:38KSP vs compiler plugins
  9. 35:47Testing Kotlin compiler plugins
  10. 36:49Sky: Swift-friendly Kotlin API
  11. 37:31Q&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.