title: Exception Passing Through scala.concurrent.Future?
body: <p>Is it possible for an exception to be thrown, escaping the <code>Future</code> context?</p>
  
  <p>Since a <code>Future</code> "evaluates" as soon as it's defined:</p>
  
  <p>is it possible for the definition of a <code>Future</code> to throw an exception, passing through the <code>Future</code> context?</p>
  
  <pre><code>scala&gt; Future { Thread.sleep(3000); println("3 seconds elapsed"); 100 }
  res2: scala.concurrent.Future[Int] = 
       scala.concurrent.impl.Promise$DefaultPromise@56113384
  
  scala&gt; 3 seconds elapsed
  </code></pre>
  
  <p>I could not come up with such an example.</p>
  
  <pre><code>scala&gt; Future { throw new Exception("Foo!") }
  res3: scala.concurrent.Future[Nothing] = 
    scala.concurrent.impl.Promise$DefaultPromise@47a86fbb
  </code></pre>