'try?' doesn't foreclose on the ability to capture a maybe-error into a value.
Conversation
It increases the inertia of Optionalish errors rather than Eitherish errors (i.e., an afterthought).
2
I want the bad path to receive as much compositional power and valueness as the good path.
3
3
The ability to abstract over 'throws' is admittedly weak. I hope we'll improve.
3
7
Throwing closures are definitely still very awkward, esp w/ async.
3
Result can pass values through closures, but then you abstract async and have Promise<Result<T>>…
2
1
Though another answer there is that Promise *means* Future<Result<T>>.
1
1
True, and that's even somewhat reasonable since async things tend to also be failable things.
1
1
This is what C# does: captures exceptions thrown in Tasks, makes available as Result.
2
4
I'm certainly much more interested in C#'s async/await than Result/Promise/Future.
1
4
Replying to
The thing that makes async/await good is that those things are all the same.



