A Kotlin Schrödinger Cat
Today I want to write on nullability checks that Kotlin does “under the hood”, why sometimes our beloved language deserves a little bit of attention to avoid mistakes and how big-K translates our pretty code in JVM bytecode.
In particular, we have to give extreme attention when we are forcing non-null objects on Kotlin, because everything could — really! — end in a NPE (aka Null Pointer Exception, aka “dead”).