title: Can Kotlin be defined a strongly typed language?
body: <p>From the definition of strongly-typed language: </p>
  
  <blockquote>
    <p>A strongly-typed programming language is one in which each type of
    data (such as integer, character, hexadecimal, packed decimal, and so
    forth) is predefined as part of the programming language and all
    constants or variables defined for a given program must be described
    with one of the data types (<a href="https://whatis.techtarget.com/definition/strongly-typed" rel="noreferrer">source</a>)</p>
  </blockquote>
  
  <p>From kotlin documentation, I can understand that kotlin is a <strong>statically typed</strong> language because the type of the variable is known at compile time, but what about strongly or weakly typed? I can't find any clear response googling. As far as I understood Kotlin should be equally strongly typed as Java because it compiles down to Java byte code, but I'm not 100% sure. Please help me to understand if I'm on the right way.</p>