title: Zip two lists of different lengths with default element to fill
body: <p>Assume we have the following lists of different size:</p>
  
  <pre><code>val list1 = ("a", "b", "c")
  val list2 = ("x", "y")
  </code></pre>
  
  <p>Now I want to merge these 2 lists and create a new list with the string elements being concatenated:</p>
  
  <pre><code>val desiredResult = ("ax", "by", "c")
  </code></pre>
  
  <p>I tried</p>
  
  <pre><code>val wrongResult = (list1, list2).zipped map (_ + _)
  </code></pre>
  
  <p>as proposed <a href="https://stackoverflow.com/questions/1157564/zipwith-mapping-over-multiple-seq-in-scala">here</a>, but this doesn't work as intended, because zip discards those elements of the longer list that can't be matched.</p>
  
  <p>How can I solve this problem? Is there a way to zip the lists and give a "default element" (like the empty string in this case) if one list is longer?</p>