title: How is this type parameter 'typed'?
body: <p>In the method signature for groupBy : </p>
  
  <pre><code>def groupBy[K](f : (A) =&gt; K) : Map[K, This]
  </code></pre>
  
  <p>How is the type parameter of [K] on groupBy typed ? What is the significance of [k] in this context : groupBy[K] . Why is the type parameter required here, is this a requirement of Scala that cannot use instead : <code>def groupBy(f : (A) =&gt; K) : Map[K, This]</code> ?</p>