Two Stones, One Bird: Implementation Tradeoffs
summary
Compares concrete Kotlin choices: null handling (if vs ?.let), scoping helpers (with / apply / run / also), primitive vs boxed arrays, delegates.notNull versus lateinit and inline function vs property tradeoffs. Shows bytecode for if and let, finds an extra bytecode assignment removed by ProGuard, reports a 93% poll favoring let, and argues sequences avoid intermediate lists but add lazy-transform overhead—so performance wins require profiling; recommendations favor readability unless measurements prove otherwise.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 1:41Two Stones One Bird
- 2:44Winning Arguments on the Internet
- 4:07KnowLability
- 5:54Style Guides
- 18:02Teta
- 19:16When to use
- 26:29Array events
- 28:24Delegates
- 33:42Inline vs custom getters
- 37:05Sequences
- 40:36Holistic Performance








