Earlier quoted context omitted.
var something = (() => { try { return mayThrow() } catch(SomeException ex) { log.Info(ex); return null; } catch(Exception ex) { log.Fatal(ex); throw; } })(); Close enough?
not really; can't immediately return from the lambda caller without throwing, always have to either try/catch anyway or if/else the return value of the lambda. (also, it's rather ugly to read and inconvenient to write.)
You want to immediately return in the middle of something that was supposed to simulate just evaluating an expression?
You can't immediately return in the middle of 2+2 as well because return is a statement and can't be a part of expression.