title: Why can't make to methods with same name but with different generics?
body: <p>I'm pretty new in Kotlin language, but I have just encountered some strange behavior that didn't have in other languages, so I wanted to ask why I can't do something like this:</p>
  
  <pre><code>fun &lt;T&gt; methodName()
  {
      // whatev~ 
  }
  
  fun &lt;T, K&gt; methodName()
  {
      // whatev~   
  }
  </code></pre>
  
  <p>This code throws an error of "Conflicting overloads".</p>
  
  <p>In other languages, for example C# I can do this and it's a pretty neat trick to have only one method that work for one or multiple types at the same time.</p>
  
  <p>The only workaround I've found it's adding in each new method that I do an optional parameter that I'll never use, like:</p>
  
  <pre><code>fun &lt;T&gt; methodName()
  {
  
  }
  
  fun &lt;T, K&gt; methodName(crappyParam: String = "")
  {
  
  }
  </code></pre>