an operator for ignoring any exceptions

T.J. Crowder tj.crowder at
Sat Aug 12 07:47:36 UTC 2017

On Sat, Aug 12, 2017 at 7:14 AM, Hikaru Nakashima <oao.hikaru.oao at>
> In addition, there is `optional catch binding` proposal, and this
> idea is less dangerous.
> Rather, this idea looks natural, because `foo = try bar` is looks
> like `foo = do { try { bar }  }` .

I think you're misunderstanding the [optional catch binding proposal][1].
It does **not** make `try { something }` valid. It makes `try { something }
catch { }` valid. It's for all those times you don't need the exception, so
the *binding* (the `(e)` part of `catch (e)`) is made optional.

If I'm wrong about your misunderstanding the proposal, my apologies; if so,
what's dangerous about optional catch bindings?

Making `catch` optional would indeed, in my view, be dangerous, which is
why I don't like the suggestion that's the topic of this thread. If you're
going to ignore exceptions on a block, for which, yes, there are valid use
cases, I much prefer that it be explicit.

-- T.J. Crowder

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the es-discuss mailing list