title: What do Multiple parameter lists to Some() in scala achieve?
body: <p>Can someone explain to me what the multiple parameter lists to Some() class below achieve?</p>
  
  <p>I ran into this while reading a solution related to use of ClassTags in :</p>
  
  <p><a href="https://stackoverflow.com/questions/23718165/implicit-parameter-and-classtag">Implicit parameter and ClassTag</a></p>
  
  <pre><code>object Other { 
    def apply[T: ClassTag](data: T)(implicit ordering: Ordering[T]): T =
      Some(data)(implicitly, ordering.reverse)
  }
  </code></pre>