title: Try ... catch ... finally return value
body: <p>I found that it's a shame that I can't return a return value from a such simple construction as <code>try ... catch ... finally</code></p>
  
  <pre><code> def foo: String = {
      val in = new BufferedReader(.....)
      try {
        // val in = new BufferedReader(.....) -- doesn't matter
        in.readLine
      }
      catch {
        case e: IOException =&gt; e.printStackTrace()
      }
      finally {
        in.close()
      }
    }
  </code></pre>
  
  <p>This code doesn't compile. Is there any way to make compile <strong>expect</strong> using any libraries, high-level constructions, etc? I want to do that only by using the capacity of pure Scala as a programming language.</p>