title: Idiomatic way of extracting lists from a list of tuples
body: <p>Is there a concise way of performing the following mapping in Scala?</p>
  
  <pre><code>val listOfTuples: List[Tuple2[Foo, Bar]] = ???
  val (foos, bars) = listOfTuples // foo:List[Foo], bar:List[Bar]
  </code></pre>
  
  <p>I have seen <a href="https://stackoverflow.com/questions/12392409/scala-how-to-convert-tuple-elements-to-lists">others</a> <code>map</code> the <code>List[Tuple[X, X]]</code> onto a <code>List[List[X]]</code> and then <code>transpose</code> the list, although this only works with tuples composed from homogeneous type parameters.</p>