~/talk

The Kotlin Swift boundary

Talkat Chicago Roboto 2021 · on Tuesday, 2021-09-28· [kotlin, swift]
links:none on file
slides:none on file

Kotlin/Native compiles to Objective-C-compatible bytecode but idiomatic Swift often breaks: default parameters lost through the Obj‑C layer, generics erased at protocol boundaries, and reference‑counting plus the freeze API create surprising concurrency constraints. Practical fixes include adapter classes, JSON ↔ NSDictionary bridges using kotlinx.serialization, a flow-to-publisher adapter to expose Kotlin Flows as Combine publishers, and packaging via frameworks/CocoaPods or SPM wrappers; a new memory model lands experimentally in Kotlin 1.6 M1.

AI-written summary · about

  1. 0:00Kotlin Swift boundary intro
  2. 1:25Kotlin multi-platform overview
  3. 4:17Shared vs platform Kotlin code
  4. 7:48Kotlin multi-platform model
  5. 8:08Bridging Kotlin to Swift
  6. 10:15Default params in Swift interop
  7. 12:46Generics challenges in interop
  8. 15:37Protocols and generics limits
  9. 16:40Kotlin memory model for iOS
  10. 19:08Kotlin data vs Swift structs
  11. 21:15Kotlin sealed vs Swift enums
  12. 22:59Async in Kotlin and Swift
  13. 26:10Shared logic case study
  14. 29:02Key lessons from interop
  15. 31:53Future of Kotlin multi-platform
  16. 32:55Q&A on interop
~/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.