~/talk

The Compose Runtime, Demystified

Talkat KotlinConf 2019 · 2019-12-04..12-06· [android, frontend-architecture]
slides:none on file

Jetpack Compose is a Kotlin UI runtime plus a Kotlin compiler plugin that rewrites composable functions into calls that manage a flat slot table (gap buffer). The runtime implements positional memoization and schedules recomposition when observed state changes, using compiler-generated call-site keys and a lightweight remember/state API. The implementation is early but live, works off the Android platform, and demonstrates concrete tradeoffs: constant-time slot ops, costly gap moves on structural changes, and room for compiler-driven skipping and parallelism.

AI-written summary · about

  1. 0:00Introduction
  2. 0:28Show of Hands
  3. 0:51Compose Runtime
  4. 2:33Kotlin Compiler Plugin
  5. 3:10caveats
  6. 3:58what is declarative
  7. 6:30declarative UI system
  8. 6:54anatomy
  9. 8:53suspend
  10. 11:18Composable functions
  11. 13:02Slottable
  12. 15:22composable function
  13. 16:48slot table
  14. 19:52If statement overhead
  15. 21:29Memoization
  16. 25:19Recomposition
  17. 25:38AppModel
  18. 28:39Observing Live Data
  19. 31:22Composable Example
  20. 32:15Static Parameter
  21. 34:39referential transparency
  22. 34:54referential transparency example
  23. 35:46ingredients for referential transparency
  24. 36:10are composable functions pure
  25. 36:29are readonly
  26. 37:25skippable
  27. 38:31UI library
  28. 39:33Compose
  29. 39:53Compose Slack
~/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.