If I recall correctly lateinit exists because of a...
# language-proposals
d
If I recall correctly lateinit exists because of a need to interoperate with some Java instrumentation frameworks that don't have a concept of backing fields or nullability. Dependency Injection mostly?