Andreas Rossberg (2015-07-13T08:14:47.000Z)
Do-expressions will solve this:

 let stuff = do { try {
   f()
 } catch (e) { 0 } }

The inflation of braces is somewhat ugly there, and we might want to allow
dropping some of them.

/Andreas


On 12 July 2015 at 10:26, Gary Guo <nbdd0121 at hotmail.com> wrote:

> This is not possible as it contracts with existing semantics. Wrap it with
> a function instead.
>
> ------------------------------
> From: jbucaran at me.com
> Subject: Allow `try…catch` blocks to return a value.
> Date: Sun, 12 Jul 2015 06:53:52 +0900
> To: es-discuss at mozilla.org
>
>
> Allow `try…catch` blocks to return a value.
>
> Sometimes I wrap a `try…catch` in a function and return a value based in
> whether there was an error or not.
>
> It would be useful if you could use `return` inside a `try…catch` block to
> accomplish the same.
>
>
> ```js
>  let stuff = try {
>    return ...
>  } catch (e) { return … ? … : ... }
> ```
> _______________________________________________ es-discuss mailing list
> es-discuss at mozilla.org https://mail.mozilla.org/listinfo/es-discuss
>
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20150713/3d2eb3b4/attachment-0001.html>
d at domenic.me (2015-07-17T19:50:10.847Z)
Do-expressions will solve this:

```js
 let stuff = do { try {
   f()
 } catch (e) { 0 } }
```

The inflation of braces is somewhat ugly there, and we might want to allow
dropping some of them.