title: Why doesn't Kotlin allow to use lateinit with primitive types?
body: <p>In the Kotlin language we, by default, have to initialize each variable when it is introduced. To avoid this, the <code>lateinit</code> keyword can be used. Referring to a <code>lateinit</code> variable before it has been initialized results in a runtime exception.</p>
  
  <p><code>lateinit</code> can not, however, be used with the primitive types. Why is it so?</p>